USO DE IRONPDF PARA JAVA

Java PDF Stamper (Tutorial para principiantes)

Actualizado 1 de mayo, 2023
Compartir:

El documento PDF es un formato digital utilizado para enviar datos por Internet. Conserva el formato de los datos y permite al usuario controlar el documento. Dado que la mayoría de los negocios se realizan hoy en día en línea, la mayoría de las veces los datos se comparten mediante archivos PDF. En ocasiones, las empresas necesitan añadir nuevos datos a un archivo PDF adjunto. Sin embargo, editar un documento PDF puede resultar difícil, sobre todo cuando se trata de añadir nuevos contenidos. Añadir o modificar todos los elementos interactivos de los documentos PDF existentes en Java también resulta a veces difícil para los desarrolladores, y crear un PDF Stamper desde cero puede ser bastante tedioso y llevar mucho tiempo. Con la mejora de las tecnologías y la aparición de numerosas bibliotecas, crear un PDF Stamper en Java es ahora muy fácil.

En este artículo, vamos a crear un PDF Stamper en Java utilizando IronPDF Library.

IronPDF - Biblioteca PDF Java

IronPDF es una biblioteca PDF Java para generar, leer y editar documentos PDF. Permite a los usuarios trabajar con documentos PDF con facilidad y precisión. IronPDF for Java se basa en el éxito de IronPDF for .NET y ofrece eficacia en distintas plataformas. IronPDF for Java utiliza IronPdfEngine, que es rápido y optimizado para el rendimiento.

IronPDF ayuda a extraer texto, imágenes y otros objetos de archivos PDF. Ayuda a crear PDF a partir de cadenas o archivos HTML, URL e imágenes. También permite la conversión entre distintos formatos de archivo. Puede añadir fácilmente nuevos contenidos y sellar firmas junto con metadatos a documentos PDF existentes. Está diseñado especialmente para Java 8+, Scala y Kotlin, en cualquier plataforma Windows, Linux y Cloud.

Pasos para crear PDF Stamper utilizando IronPDF en la aplicación Java

Requisitos previos

Para crear un PDF Stamper, necesitará los siguientes requisitos previos:

1. Java IDE

Puede utilizar cualquier IDE compatible con Java. Hay un montón de IDEs disponibles para el desarrollo de Java. Aquí utilizaremos IDE IntelliJ. Puedes utilizar NetBeans, Eclipse, etc.

2. Proyecto Maven

Maven es un gestor de dependencias y permite controlar el proyecto Java. Maven para Java puede descargarse de aquí. IntelliJ IDE para Java contiene el soporte de Maven.

3. IronPDF

Puede descargar e instalar IronPDF for Java de varias formas.

  • Añadir la dependencia IronPDF en el archivo pom.xml del proyecto Maven.

    ``xml-mvn-install-ao

  • Visite el sitio web de Maven y descargue el último paquete IronPDF for Java. Descargar desde el enlace aquí.
  • Descarga directa desde el sitio web de IronPDF a través de enlace.
  • Instale manualmente IronPDF utilizando la Archivo JAR en su aplicación Java.

4. Slf4j

Esta dependencia también es necesaria para estampar contenido en un documento PDF existente. Se puede añadir utilizando el gestor de dependencias de Maven en IntelliJ o descargándolo directamente de la web de Maven. Añade la siguiente dependencia al archivo pom.xml:

<dependency>
    <groupId>org.slf4j</groupId>
    <artifactId>slf4j-simple</artifactId>
    <version>2.0.5</version>
</dependency>
XML

Añadir importaciones necesarias

Una vez instalados todos los requisitos previos, tenemos que importar los paquetes IronPDF necesarios para trabajar con documentos PDF. Añade el siguiente código en la parte superior del archivo Main.java:

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.stamp.*;
import java.io.IOException;
import java.nio.file.Paths;
JAVA

Clave de licencia

Algunos métodos disponibles en IronPDF requieren una licencia para ser utilizados. Puede adquirir una licencia o probar IronPDF por gratis. Puede configurar la tecla de la siguiente manera:

License.setLicenseKey("YOUR-KEY");
JAVA

Abrir un documento PDF existente

Para importar un documento existente para estampar nuevos contenidos, se utiliza la clase PdfDocument. Su método estático fromFile se utiliza para cargar un archivo desde una ruta específica con el nombre real del archivo. El código es el siguiente:

PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));
JAVA

Documento original cargado:

Java PDF Stamper (Tutorial para principiantes): Figura 1

Añadir nuevo contenido HTML

IronPDF proporciona un paquete de sellos. Permite un montón de útiles opciones de estampación como BarcodeStampter, HtmlStampter, ImageStamper, TextStamper y otras para la alineación de contenidos. Para añadir nuevo contenido HTML a nuestro documento PDF utilizaremos la clase HtmlStamper. Hemos abierto el archivo en la sección anterior, ahora vamos a añadir algo de contenido a la misma. El siguiente código ayuda a realizar esta tarea:

HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");
JAVA

Primero creamos un objeto HtmlStamper y luego usamos su método setHtml para adjuntar nuevo código HTML. Ahora tenemos que aplicarlo al documento PDF existente para crear una nueva versión PDF.

Añadir todos los elementos interactivos al documento PDF

Utilizando el objeto PdfDocument creado anteriormente añadiremos el código HTML al documento existente. Proporciona applyStamp con dos sobrecargas, una que sólo acepta el contenido como objeto Stamper y otra con selección de página también.

 pd.applyStamp(htmlStamper);
JAVA

Esto añadirá la descripción de la cadena al documento existente.

Guardar los cambios en el PDF

Para guardar el archivo, utilice el método saveAs del objeto PdfDocument.

pd.saveAs("stamped.pdf");
JAVA

Java PDF Stamper (Tutorial para principiantes): Figura 2

La cadena HTML se añade a cada página del documento PDF y en el centro de cada página.

Sello a páginas específicas

Puede utilizar otra sobrecarga del método applyStamp para añadir el contenido a una página específica.

pd.applyStamp(htmlStamper, PageSelection.singlePage(1));
JAVA

La clase PageSelection proporciona diferentes métodos para controlar el número de página. firstPage, lastPage, allPages, y pageRange son algunos métodos disponibles para añadir el contenido adecuadamente.

Alinear los contenidos

Puede utilizar los métodos setVerticalAlignment, setHorizontalAlignment, setWidth, setHeight en cada clase Stamper para ajustar la posición del contenido añadido al documento PDF existente. El siguiente código de ejemplo le ayudará a colocar el texto en la parte inferior izquierda de la página:

htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
JAVA

Java PDF Stamper (Tutorial para principiantes): Figura 3

Puede utilizar los métodos setVerticalOffset, setHorizontalOffset para ajustar aún más el posicionamiento del contenido.

Para obtener más información sobre cómo trabajar con archivos PDF utilizando IronPDF, visite este enlace ejemplo de código página.

Estampar metadatos, firma y opciones de seguridad en un documento existente

IronPDF for Java es una biblioteca versátil y proporciona la facilidad de añadir la descripción del archivo en forma de metadatos, permisos de usuario, contraseña de usuario, añadir la firma digital y crear documento firmado a la misma la versión del documento PDF.

Metadatos

//  Editar metadatos de archivos
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());
JAVA

Opciones de seguridad

También puede controlar las opciones de seguridad de su archivo PDF para que los datos queden a salvo de usos no autorizados. Proporciona opciones para establecer los parámetros allowPrinting, allowModifyContents, allowCopy, allowModifyAnnotations en verdadero o falso. El siguiente código de ejemplo le ayudará a establecer todas las propiedades de los objetos mencionadas anteriormente.

//  Editar la configuración de seguridad de los archivos
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPastContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");
JAVA

Contraseña de usuario

//  Cambiar o establecer la contraseña de encriptación del documento
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");

securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));
JAVA

Para estampar firmas digitales en el archivo real, puede ver esto ejemplos de código página.

Resumen

En este artículo hemos explicado cómo estampar contenido en un documento PDF existente en Java. Hay un paquete stamp con un montón de útiles clases de estampado, que se pueden utilizar para añadir el contenido de múltiples formatos a PDF en cualquier lugar deseado del documento original.

IronPDF es una biblioteca versátil, como se puede ver en los ejemplos de código anteriores. Es una herramienta de generación y manipulación de PDF bastante sencilla pero muy potente. Esto ayuda a los desarrolladores a integrar fácilmente todas las funcionalidades de PDF en un único programa de aplicación Java.

IronPDF es gratuito para el desarrollo único y proporciona un prueba gratuita para probar su funcionalidad completa sin marca de agua. Sin embargo, para uso comercial debe ser con licencia.

Por último, IronPDF ofrece una promoción especial en la que los desarrolladores pueden adquirir los cinco productos de Iron Software por el precio de dos licencias.

< ANTERIOR
Cómo crear un PDF a partir de una plantilla en Java
SIGUIENTE >
Qué es Maven en Java (Tutorial sobre su funcionamiento)

¿Listo para empezar? Versión: 2024.3 recién publicada

Descarga gratuita de Maven Ver licencias >