Java PDF Stamper (Tutorial para Principiantes)
IronPDF - Biblioteca PDF de Java
IronPDF es una biblioteca Java para PDF para generar, leer y editar documentos PDF. Permite a los usuarios trabajar con documentos PDF con facilidad y precisión. IronPDF para Java está construido sobre el éxito de IronPDF para .NET y proporciona eficiencia en diferentes plataformas. IronPDF para Java utiliza IronPdfEngine, que es rápido y optimizado para el rendimiento.
IronPDF ayuda a extraer texto e imágenes de PDFs y otros objetos de archivos PDF. Ayuda a crear PDFs a partir de una cadena de HTML, URL e imágenes. También permite la conversión entre diferentes formatos de archivo. Puede añadir fácilmente nuevo contenido y añadir firmas digitales a los PDFs junto con metadatos de documento 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
Prerrequisitos
Para hacer un sellador de PDF, necesitarás los siguientes requisitos previos:
1. Java IDE
Puedes usar cualquier IDE compatible con Java. Hay un montón de IDEs disponibles para el desarrollo en Java. Esta demostración usará IntelliJ IDE. Puedes usar NetBeans, Eclipse, etc.
2. Proyecto Maven
Maven es un gestor de dependencias y permite controlar el proyecto Java. Maven para Java se puede descargar desde el sitio web oficial de Maven. IntelliJ IDE para Java contiene soporte para Maven.
3. IronPDF
Puedes descargar e instalar IronPDF para Java de varias maneras.
- Añadiendo la dependencia IronPDF en el archivo
pom.xmlen el proyecto Maven.
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>LATEST_VERSION</version> <!-- Make sure to replace LATEST_VERSION with the actual version number -->
</dependency><dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>LATEST_VERSION</version> <!-- Make sure to replace LATEST_VERSION with the actual version number -->
</dependency>- Visita el sitio web de Maven y descarga el último paquete IronPDF para Java desde el repositorio Maven para IronPDF.
- Descarga directamente IronPDF desde la sección oficial de descargas de IronPDF en IronPDF.com.
- Instala manualmente IronPDF usando el archivo JAR de IronPDF en tu aplicación Java.
4. Slf4j
Esta dependencia también es requerida para sellar contenido en un documento PDF existente. Se puede añadir usando el gestor de dependencias Maven en IntelliJ o descargar directamente desde el sitio 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><dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>2.0.5</version>
</dependency>Añadir las importaciones necesarias
Una vez que se han instalado todos los requisitos previos, el siguiente paso es importar los paquetes necesarios de IronPDF para trabajar con documentos PDF. Añade el siguiente código en la parte superior del archivo Main.java:
import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;import com.ironsoftware.ironpdf.License;
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.edit.PageSelection;
import com.ironsoftware.ironpdf.metadata.MetadataManager;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityManager;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import com.ironsoftware.ironpdf.stamp.*;
import java.io.IOException;
import java.nio.file.Paths;
import java.util.Date;Clave de licencia
Algunos métodos disponibles en IronPDF requieren una licencia para ser usados. Puedes comprar una licencia o probar IronPDF de forma gratuita con una licencia de prueba. Puedes establecer la clave así:
// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");// Set the IronPDF license key
License.setLicenseKey("YOUR-KEY");Abrir un documento PDF existente
Para importar un documento existente para sellar nuevo contenido, se utiliza la clase [PdfDocument](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html). Su método estático [fromFile](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#fromFile(java.nio.file.Path)) se utiliza para cargar un archivo desde una ruta específica con el nombre del archivo real. El código es el siguiente:
// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));// Load an existing PDF document
PdfDocument pd = PdfDocument.fromFile(Paths.get("sample.pdf"));Documento original cargado:
El documento de ejemplo
Añadir nuevo contenido HTML
IronPDF proporciona un paquete de sellos. Permite una serie de opciones de estampado útiles como [BarcodeStamper](/java/object-reference/api/com/Iron Software/ironpdf/stamp/BarcodeStamper.html), [HtmlStamper](/java/object-reference/api/com/Iron Software/ironpdf/stamp/HtmlStamper.html), [ImageStamper](/java/object-reference/api/com/Iron Software/ironpdf/stamp/ImageStamper.html), [TextStamper](/java/object-reference/api/com/Iron Software/ironpdf/stamp/TextStamper.html), y otros para la alineación del contenido. Para añadir nuevo contenido HTML a este documento PDF se utilizará la clase HtmlStamper. Vamos a usar el archivo de la sección anterior y añadirle algo de contenido. El siguiente código ayuda a lograr esta tarea:
// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");// Create an HtmlStamper and set its content
HtmlStamper htmlStamper = new HtmlStamper();
htmlStamper.setHtml("New content added!");Se crea un objeto HtmlStamper y luego se usa su método [setHtml](/java/object-reference/api/com/Iron Software/ironpdf/stamp/Stamper.html#setHtml(java.lang.String)) para adjuntar nuevo código HTML. El siguiente paso es aplicarlo al documento PDF existente para crear una nueva versión del PDF.
Añadir todos los elementos interactivos a un documento PDF
Usando el objeto PdfDocument creado anteriormente para añadir el código HTML al documento existente. Proporciona [applyStamp](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#applyStamp(com.Iron Software.ironpdf.stamp.Stamper)) con dos sobrecargas, una que sólo acepta el contenido como un objeto [Stamper](/java/object-reference/api/com/Iron Software/ironpdf/stamp/Stamper.html) y la otra también con selección de página.
// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);// Apply the stamper to the PDF document
pd.applyStamp(htmlStamper);Esto añadirá la descripción de la cadena al documento existente.
Guardar los cambios en el PDF
Para guardar el archivo, usa el método [saveAs](/java/object-reference/api/com/Iron Software/ironpdf/PdfDocument.html#saveAs(java.lang.String)) del objeto PdfDocument.
// Save the modified PDF document
pd.saveAs("stamped.pdf");// Save the modified PDF document
pd.saveAs("stamped.pdf");
El archivo PDF estampado
La cadena HTML se añade a cada página del documento PDF y en el medio de cada página.
Sello a páginas específicas
Puedes usar otra sobrecarga del método applyStamp para añadir el contenido a una página específica.
// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));// Stamp content to a specific page
pd.applyStamp(htmlStamper, PageSelection.singlePage(1));La clase [PageSelection](/java/object-reference/api/com/Iron Software/ironpdf/edit/PageSelection.html) 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 de manera adecuada.
Alineación del contenido
Puedes usar [setVerticalAlignment](/java/object-reference/api/com/Iron Software/ironpdf/stamp/Stamper.html#setVerticalAlignment(com.Iron Software.ironpdf.stamp.VerticalAlignment), [setHorizontalAlignment](/java/object-reference/api/com/Iron Software/ironpdf/stamp/Stamper.html#setHorizontalAlignment(com.Iron Software.ironpdf.stamp.HorizontalAlignment), setWidth, setHeight métodos en cada clase Stamper para ajustar la posición del contenido añadido al documento PDF existente. El siguiente código de ejemplo ayudará a colocar el texto en la parte inferior izquierda de la página:
// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);// Set the alignment of the stamper
htmlStamper.setHorizontalAlignment(HorizontalAlignment.LEFT);
htmlStamper.setVerticalAlignment(VerticalAlignment.BOTTOM);
El archivo PDF de salida con alineación del sellador
Puedes usar los métodos setVerticalOffset, setHorizontalOffset para ajustar aún más la posición del contenido.
Para más información sobre cómo trabajar con archivos PDF usando IronPDF visita este ejemplo de código para la conversión de HTML a PDF en Java.
Sellar metadatos, firma y opciones de seguridad en un documento existente
IronPDF para Java es una biblioteca versátil y proporciona la facilidad de añadir descripciones de archivos en forma de metadatos, permisos de usuario, contraseña de usuario, añadir firma digital y crear documentos firmados para guardar la versión del documento PDF.
Metadatos
// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());// Edit file metadata
MetadataManager metadata = pd.getMetadata();
metadata.setAuthor("Satoshi Nakamoto");
metadata.setKeywords("SEO, Friendly");
metadata.setModifiedDate(new Date().toString());Opciones de seguridad
También puedes controlar las opciones de seguridad de tu archivo PDF para que los datos sean guardados de un uso no autorizado. Proporciona opciones para establecer [setAllowUserPrinting](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setAllowUserPrinting(com.Iron Software.ironpdf.security.PdfPrintSecurity), [setAllowUserEdits](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setAllowUserEdits(com.Iron Software.ironpdf.security.PdfEditSecurity), [setAllowUserCopyPasteContent](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setAllowUserCopyPasteContent(java.lang.Boolean), [setAllowUserAnnotations](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setAllowUserAnnotations(java.lang.Boolean), [setUserPassword](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setUserPassword(java.lang.String), [setAllowUserFormData](/java/object-reference/api/com/Iron Software/ironpdf/security/SecurityOptions.html#setAllowUserFormData(java.lang.Boolean)) parámetros a verdadero o falso. El siguiente código de ejemplo ayudará a establecer todas las propiedades de los objetos mencionados anteriormente.
// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");// Edit file security settings
SecurityOptions securityOptions = new SecurityOptions();
securityOptions.setAllowUserCopyPasteContent(false);
securityOptions.setAllowUserAnnotations(false);
securityOptions.setAllowUserPrinting(PdfPrintSecurity.FULL_PRINT_RIGHTS);
securityOptions.setAllowUserFormData(false);
securityOptions.setOwnerPassword("top-secret");
securityOptions.setUserPassword("sharable");Contraseña de usuario
// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");
securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));// Change or set the document encryption password
SecurityManager securityManager = pd.getSecurity();
securityManager.removePasswordsAndEncryption();
securityManager.makePdfDocumentReadOnly("secret-key");
securityManager.setSecurityOptions(securityOptions);
pd.saveAs(Paths.get("assets/secured.pdf"));Para sellar firmas digitales en el archivo real, puedes ver este ejemplo de código detallado para firmas PDF.
Resumen
Este artículo discutió cómo sellar contenido en un documento PDF existente en Java. Hay un paquete stamp con una serie de clases de estampado útiles, que pueden usarse para añadir contenido en múltiples formatos en cualquier ubicación deseada en el documento original.
IronPDF es una biblioteca versátil como se puede ver en los ejemplos de código anteriores también. Es bastante sencillo pero, sin embargo, una herramienta muy poderosa para la generación y manipulación de PDF. Esto ayuda a los desarrolladores a integrar fácilmente todas las funcionalidades de PDF en un solo programa de aplicación Java.
IronPDF es gratuito para un solo desarrollo y proporciona una licencia de prueba gratuita sin marca de agua para probar toda su funcionalidad. Sin embargo, para uso comercial, debe ser licenciado con IronPDF.
Finalmente, IronPDF ofrece [una promoción especial para comprar las suites de Iron Software](Iron Suite) en la cual los desarrolladores pueden comprar los cinco productos de Iron Software por el precio de dos licencias.
Preguntas Frecuentes
¿Cómo puedo agregar contenido a un documento PDF existente en Java?
Puedes usar la clase HtmlStamper de IronPDF for Java para agregar contenido HTML a un documento PDF existente. Esta clase te permite integrar nuevo contenido mientras preservas el formato original.
¿Cuáles son los pasos principales para crear un PDF stamper en Java?
Para crear un PDF stamper usando IronPDF for Java, necesitas configurar un IDE de Java, crear un proyecto Maven para la gestión de dependencias e incluir la biblioteca IronPDF. Luego, importar las clases necesarias, inicializar la licencia, abrir un PDF existente y usar el HtmlStamper para agregar contenido.
¿Cómo puedo asegurarme de que se preserve el formato de un PDF al agregar nuevo contenido?
IronPDF for Java mantiene el formato original de un PDF al agregar nuevo contenido. Esto se logra a través de su robusto motor de renderizado, que replica con precisión el diseño existente mientras integra nuevos elementos.
¿Es posible aplicar un sello solo a ciertas páginas de un PDF?
Sí, con IronPDF for Java, puedes usar el método applyStamp junto con la clase PageSelection para seleccionar páginas específicas dentro de un PDF para estampar.
¿Cómo ajusto la posición del contenido sellado en un documento PDF?
Puedes ajustar la posición del contenido sellado en un PDF usando los métodos setVerticalAlignment y setHorizontalAlignment en la clase HtmlStamper para controlar dónde aparece el nuevo contenido en la página.
¿Cuáles son las características de seguridad disponibles para documentos PDF?
IronPDF for Java ofrece varias características de seguridad, incluyendo establecer permisos de usuario, agregar contraseñas y controlar el acceso a la impresión, edición y copia de contenido dentro de documentos PDF.
¿Necesito una licencia para usar una biblioteca de PDF para propósitos comerciales?
Sí, se requiere una licencia comercial para usar IronPDF for Java en un entorno comercial. Sin embargo, hay una licencia de prueba gratuita disponible para probar la funcionalidad completa de la biblioteca sin una marca de agua.
¿Qué plataformas son compatibles con IronPDF for Java?
IronPDF for Java es compatible con Java 8+, Scala, Kotlin y soporta varias plataformas, incluyendo Windows, Linux y entornos en la nube.
¿Cómo puedo convertir contenido HTML en un PDF en Java?
Puedes convertir contenido HTML en un PDF usando el método RenderHtmlAsPdf de IronPDF for Java, permitiendo que cadenas o archivos HTML se rendericen con precisión como documentos PDF.
¿Qué se necesita para comenzar a usar IronPDF for Java en un proyecto?
Para comenzar a usar IronPDF for Java, asegúrate de tener un IDE de Java como IntelliJ, un proyecto Maven para gestionar dependencias y la biblioteca IronPDF. También necesitas importar las clases relevantes y configurar una licencia para la biblioteca.









