Agregar Sello de Página PDF

Agregar Sello de Página PDF en Todas las Páginas de un Archivo PDF

La clase PdfFileStamp te permite agregar un sello de página PDF en todas las páginas de un archivo PDF. Para agregar un sello de página PDF, primero necesitas crear objetos de las clases PdfFileStamp y Stamp. También necesitas crear el sello de página PDF utilizando el método PdfFileStamp de la clase Stamp. Puedes establecer otros atributos como origen, rotación, fondo, etc. utilizando el objeto Stamp también. Luego puedes agregar el sello en el archivo PDF utilizando el método AddStamp de la clase PdfFileStamp. Finalmente, guarda el archivo PDF de salida utilizando el método Close de la clase PdfFileStamp. El siguiente fragmento de código te muestra cómo agregar un sello de página PDF en todas las páginas de un archivo PDF.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPageStampOnAllPages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileStamp object
    using (var fileStamp = new Aspose.Pdf.Facades.PdfFileStamp())
    {
        // Bind PDF document
        fileStamp.BindPdf(dataDir + "SourcePDF.pdf");

        // Create stamp
        var stamp = new Aspose.Pdf.Facades.Stamp();
        // Bind PDF document
        stamp.BindPdf(dataDir + "AddPageStampOnAllPages.pdf", 1);
        stamp.SetOrigin(20, 20);
        stamp.Rotation = 90.0F;
        stamp.IsBackground = true;

        // Add stamp to PDF file
        fileStamp.AddStamp(stamp);

        // Save PDF document
        fileStamp.Save(dataDir + "PageStampOnAllPages_out.pdf");
    }
}

Agregar Sello de Página PDF en Páginas Particulares de un Archivo PDF

La clase PdfFileStamp te permite agregar un sello de página PDF en páginas particulares de un archivo PDF. Para agregar un sello de página PDF, primero necesitas crear objetos de las clases PdfFileStamp y Stamp. También necesitas crear el sello de página PDF utilizando el método BindPdf de la clase Stamp. Puedes establecer otros atributos como origen, rotación, fondo, etc. utilizando el objeto Stamp también. Como deseas agregar un sello de página PDF en páginas particulares del archivo PDF, también necesitas establecer la propiedad Pages de la clase Stamp. Esta propiedad requiere un arreglo de enteros que contenga los números de las páginas en las que deseas agregar el sello. Luego puedes agregar el sello en el archivo PDF utilizando el método AddStamp de la clase PdfFileStamp. Finalmente, guarda el archivo PDF de salida utilizando el método Close de la clase PdfFileStamp. El siguiente fragmento de código te muestra cómo agregar un sello de página PDF en páginas particulares de un archivo PDF.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPageStampOnCertainPages()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileStamp object
    using (var fileStamp = new Aspose.Pdf.Facades.PdfFileStamp())
    {
        // Bind PDF document
        fileStamp.BindPdf(dataDir + "SourcePDF.pdf");

        // Create stamp
        var stamp = new Aspose.Pdf.Facades.Stamp();
        // Bind PDF document
        stamp.BindPdf(dataDir + "PageStampOnCertainPages.pdf", 1);
        stamp.SetOrigin(20, 20);
        stamp.Rotation = 90.0F;
        stamp.IsBackground = true;
        stamp.Pages = new[] { 1, 3 };  // Apply stamp to specific pages (1 and 3)

        // Add stamp to PDF file
        fileStamp.AddStamp(stamp);

        // Save PDF document
        fileStamp.Save(dataDir + "PageStampOnCertainPages_out.pdf");
    }
}

Agregar Número de Página en un Archivo PDF

La clase PdfFileStamp te permite agregar números de página en un archivo PDF. Para agregar números de página, primero necesitas crear un objeto de la clase PdfFileStamp. Si deseas mostrar el número de página como “Página X de N” donde X es el número de la página actual y N es el número total de páginas en el archivo PDF, entonces primero necesitas obtener el conteo de páginas utilizando la propiedad NumberOfpages de la clase PdfFileInfo. Para obtener el número de la página actual, puedes usar el signo # en tu texto donde desees. Puedes formatear el texto del número de página utilizando la clase FormattedText. Si deseas comenzar la numeración de páginas desde un número específico, entonces puedes establecer la propiedad StartingNumber. Una vez que estés listo para agregar el número de página en el archivo, necesitas llamar al método AddPageNumber de la clase PdfFileStamp. Finalmente, guarda el archivo PDF de salida utilizando el método Close de la clase PdfFileStamp. El siguiente fragmento de código te muestra cómo agregar un número de página en un archivo PDF.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddPageNumberInPdfFile()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileStamp object
    using (var fileStamp = new Aspose.Pdf.Facades.PdfFileStamp())
    {
        // Bind PDF document
        fileStamp.BindPdf(dataDir + "StampPDF.pdf");

        // Get total number of pages
        int totalPages = new Aspose.Pdf.Facades.PdfFileInfo(dataDir + "StampPDF.pdf").NumberOfPages;

        // Create formatted text for page number
        var formattedText = new Aspose.Pdf.Facades.FormattedText($"Page # of {totalPages}",
            System.Drawing.Color.AntiqueWhite,
            System.Drawing.Color.Gray,
            Aspose.Pdf.Facades.FontStyle.TimesBoldItalic,
            Aspose.Pdf.Facades.EncodingType.Winansi,
            false, 12);

        // Set starting number for first page; you might want to start from 2 or more
        fileStamp.StartingNumber = 1;
        // Add page number in upper right corner
        fileStamp.AddPageNumber(formattedText, (int)PageNumPosition.PosUpperRight);

        // Save PDF document
        fileStamp.Save(dataDir + "AddPageNumber_out.pdf");
    }
}

// Add PDF Page Numbers
public enum PageNumPosition
{
    PosBottomMiddle, PosBottomRight, PosUpperRight, PosSidesRight, PosUpperMiddle, PosBottomLeft, PosSidesLeft, PosUpperLeft
}

Estilo de Numeración Personalizado

La clase PdfFileStamp ofrece la función de agregar información del Número de Página como objeto de sello dentro del documento PDF. Antes de esta versión, la clase solo admitía el estilo de numeración de páginas 1,2,3,4. Sin embargo, ha habido una solicitud de algunos clientes para utilizar un estilo de numeración personalizado al colocar el sello de número de página dentro del documento PDF. Para cumplir con este requisito, se ha introducido la propiedad NumberingStyle, que acepta los valores de la enumeración NumberingStyle. A continuación se especifican los valores ofrecidos en esta enumeración.

  • LetrasMinúsculas.
  • LetrasMayúsculas.
  • NúmerosÁrabes.
  • NúmerosRomanosMinúsculas.
  • NúmerosRomanosMayúsculas.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void AddCustomPageNumberInPdfFile()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Images();

    // Create PdfFileStamp object
    using (var fileStamp = new Aspose.Pdf.Facades.PdfFileStamp())
    {
        // Bind PDF document
        fileStamp.BindPdf(dataDir + "StampPDF.pdf");

        // Get total number of pages
        int totalPages = new Aspose.Pdf.Facades.PdfFileInfo(dataDir + "StampPDF.pdf").NumberOfPages;

        // Create formatted text for page number
        var formattedText = new Aspose.Pdf.Facades.FormattedText($"Page # of {totalPages}",
            System.Drawing.Color.AntiqueWhite,
            System.Drawing.Color.Gray,
            Aspose.Pdf.Facades.FontStyle.TimesBoldItalic,
            Aspose.Pdf.Facades.EncodingType.Winansi,
            false, 12);

        // Specify numbering style as Numerals Roman UpperCase
        fileStamp.NumberingStyle = Aspose.Pdf.NumberingStyle.NumeralsRomanUppercase;

        // Set starting number for first page; you might want to start from 2 or more
        fileStamp.StartingNumber = 1;

        // Add page number in upper right corner
        fileStamp.AddPageNumber(formattedText, (int)PageNumPosition.PosUpperRight);

        // Save PDF document
        fileStamp.Save(dataDir + "AddCustomPageNumber_out.pdf");
    }
}

// Add PDF Page Numbers
public enum PageNumPosition
{
    PosBottomMiddle, PosBottomRight, PosUpperRight, PosSidesRight, PosUpperMiddle, PosBottomLeft, PosSidesLeft, PosUpperLeft
}