Añadir Sello de Página PDF

Añadir Sello de Página PDF en Todas las Páginas de un Archivo PDF

La clase PdfFileStamp permite añadir un sello de página PDF en todas las páginas de un archivo PDF. In order to add PDF page stamp, you first need to create objects of PdfFileStamp y Stamp clases. Necesita también crear el sello de página PDF utilizando el método PdfFileStamp de la clase Stamp. Puede establecer otros atributos como origen, rotación, fondo, etc. utilizando también el objeto Stamp. Luego puede agregar el sello en el archivo PDF utilizando el método addStamp de la clase PdfFileStamp. Finalmente, guarde el archivo PDF de salida utilizando el método close de la clase PdfFileStamp. El siguiente fragmento de código muestra cómo agregar un sello de página PDF en todas las páginas de un archivo PDF.

public static void AddPageStampOnAllPages()
        {
            // Crear objeto PdfFileStamp
            PdfFileStamp fileStamp = new PdfFileStamp();

            // Abrir Documento
            fileStamp.BindPdf(_dataDir + "sample.pdf");

            // Crear sello
            Aspose.Pdf.Facades.Stamp stamp = new Aspose.Pdf.Facades.Stamp();
            stamp.BindPdf(_dataDir + "pagestamp.pdf", 1);
            stamp.SetOrigin(20, 20);
            stamp.Rotation = 90.0F;
            stamp.IsBackground = true;

            // Agregar sello al archivo PDF
            fileStamp.AddStamp(stamp);

            // Guardar archivo PDF actualizado
            fileStamp.Save(_dataDir + "PageStampOnAllPages.pdf");

            // Cerrar fileStamp
            fileStamp.Close();
        }

Añadir Sello de Página PDF en Páginas Particulares de un Archivo PDF

La clase PdfFileStamp permite añadir un sello de página PDF en páginas particulares de un archivo PDF. In order to add PDF page stamp, you first need to create objects of PdfFileStamp y Stamp clases. Necesitas crear el sello de página PDF usando el método bindPdf de la clase Stamp. Puedes establecer otros atributos como origen, rotación, fondo, etc. usando el objeto Stamp también. Como desea agregar un sello de página PDF en páginas particulares del archivo PDF, también necesita 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 desea agregar el sello. Luego puede agregar el sello en el archivo PDF usando el método addStamp de la clase PdfFileStamp. Finalmente, guarde el archivo PDF de salida usando el método close de la clase PdfFileStamp. El siguiente fragmento de código le muestra cómo agregar un sello de página PDF en páginas particulares en un archivo PDF.

public static void AddPageStampOnCertainPages()
        {
            // Crear objeto PdfFileStamp
            PdfFileStamp fileStamp = new PdfFileStamp();

            // Abrir Documento
            fileStamp.BindPdf(_dataDir + "sample.pdf");

            // Crear sello
            Aspose.Pdf.Facades.Stamp stamp = new Aspose.Pdf.Facades.Stamp();
            stamp.BindPdf(_dataDir + "pagestamp.pdf", 1);
            stamp.SetOrigin(20, 20);
            stamp.Rotation = 90.0F;
            stamp.IsBackground = true;
            stamp.Pages = new[] { 1, 3 };
            // Agregar sello al archivo PDF
            fileStamp.AddStamp(stamp);

            // Guardar archivo PDF actualizado
            fileStamp.Save(_dataDir + "PageStampOnAllPages.pdf");

            // Cerrar fileStamp
            fileStamp.Close();
        }

        // Agregar números de página PDF
        public enum PageNumPosition
        {
            PosBottomMiddle, PosBottomRight, PosUpperRight, PosSidesRight, PosUpperMiddle, PosBottomLeft, PosSidesLeft, PosUpperLeft
        }

Añadir Número de Página en un Archivo PDF (facades)

La clase PdfFileStamp te permite añadir 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” siendo X el número de página actual y N el número total de páginas en el archivo PDF, primero necesitas obtener el conteo de páginas usando la propiedad getNumberOfpages de la clase PdfFileInfo. Para obtener el número de la página actual, puedes usar el signo # en tu texto en cualquier lugar que desees. Puedes dar formato al texto del número de página usando la clase FormattedText. Si deseas comenzar la numeración de páginas desde un número específico, puedes establecer la propiedad setStartingNumber. 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 usando el método Save 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.

 public static void AddPageNumberInPdfFile() {
        // Crear objeto PdfFileStamp
        PdfFileStamp fileStamp = new PdfFileStamp();

        // Abrir Documento
        fileStamp.bindPdf(_dataDir + "sample.pdf");

        // Obtener el número total de páginas
        int totalPages = new PdfFileInfo(_dataDir + "sample.pdf").getNumberOfPages();

        // Crear texto formateado para el número de página
        FormattedText formattedText = new FormattedText("Página # de " + totalPages, java.awt.Color.WHITE,
                java.awt.Color.GRAY, FontStyle.TimesBoldItalic, EncodingType.Winansi, false, 12);

        // Establecer el número inicial para la primera página; podrías querer empezar desde 2 o más
        fileStamp.setStartingNumber(1);

        // Añadir número de página
        fileStamp.addPageNumber(formattedText, (int) PageNumPosition.PosUpperRight.ordinal());

        // Guardar archivo PDF actualizado
        fileStamp.save(_dataDir + "AddPageNumber_out.pdf");

        // Cerrar fileStamp
        fileStamp.close();
    }

Estilo de Numeración Personalizado

La clase PdfFileStamp ofrece la función de agregar información de número de página como objeto de sello dentro del documento PDF. Antes de esta versión, la clase solo soportaba 1,2,3,4 como estilo de numeración de páginas. Sin embargo, ha habido una demanda de algunos clientes para usar 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.

 public static void AddCustomPageNumberInPdfFile() {
        // Crear objeto PdfFileStamp
        PdfFileStamp fileStamp = new PdfFileStamp();

        // Abrir documento
        fileStamp.bindPdf(_dataDir + "sample.pdf");

        // Obtener el número total de páginas
        int totalPages = new PdfFileInfo(_dataDir + "sample.pdf").getNumberOfPages();

        // Crear texto formateado para el número de página
        FormattedText formattedText = new FormattedText("Página # de " + totalPages, java.awt.Color.WHITE,
                java.awt.Color.GRAY, FontStyle.TimesBoldItalic, EncodingType.Winansi, false, 12);

        // Especificar estilo de numeración como Números Romanos Mayúsculas
        fileStamp.setNumberingStyle(NumberingStyle.NumeralsRomanUppercase);

        // Establecer número inicial para la primera página; puede que quieras empezar desde 2 o más
        fileStamp.setStartingNumber(1);

        // Agregar número de página
        fileStamp.addPageNumber(formattedText, PageNumPosition.PosUpperRight.ordinal());

        // Guardar archivo PDF actualizado
        fileStamp.save(_dataDir + "AddPageNumber_out.pdf");

        // Cerrar fileStamp
        fileStamp.close();
    }