Pruebas en un entorno real
Pruebe en producción sin marcas de agua.
Funciona donde lo necesites.
Descubra la mejor biblioteca PDF para su aplicación Java. En este artículo, exploraremos cómo una biblioteca PDF de Java puede mejorar su proyecto y compararemos las dos bibliotecas principales en función de sus características, costes de licencia y tutoriales. En el pasado, trabajar con archivos PDF en Java era todo un reto, pero con los avances tecnológicos, ahora se dispone de numerosas API Java para gestionarlos.
Las dos bibliotecas que examinaremos son:
Ambas bibliotecas ofrecen la posibilidad de crear, editar e imprimir archivos PDF en Java. En esta comparativa, evaluaremos de forma concisa sus capacidades combinadas, su código base y su facilidad de instalación.
En primer lugar, echemos un vistazo a IronPDF.
IronPDF for Java crea y gestiona archivos PDF. Permite a los desarrolladores leer, crear y editar archivos PDF sin necesidad del software de Adobe. Los desarrolladores pueden añadir cabeceras y pies de página personalizados, añadir firmas y otras restricciones de seguridad. La compatibilidad total con subprocesos múltiples y asíncronos ayuda a IronPDF a alcanzar un alto rendimiento cuando los desarrolladores lo necesitan.
IronPDF for Java ofrece varias herramientas de producción y manipulación de PDF, lo que permite a los desarrolladores poner rápidamente al día sus aplicaciones Java.
Conversiones de HTML a PDF: Esta función permite generar documentos PDF a partir de archivos HTML, vistas MVC, formularios web y URL.
PDF Imaging: Esta función permite a los desarrolladores crear PDF a partir de imágenes y extraer imágenes de PDF.
Edición de PDF: IronPDF puede añadir marcas de agua, encabezados, pies de página, fondos y primeros planos, añadir y eliminar páginas y mucho más.
Extracción de contenido PDF: IronPDF puede extraer texto e imágenes de archivos PDF.(extraer texto de imágenes PDF incrustadas podría requerir el uso delBiblioteca IronOCR).
Compatibilidad: IronPDF for Java es compatible con Java 8+ y todos los sistemas operativos e IDEs modernos.
OpenPDF es una biblioteca Java gratuita y de código abierto con una licencia dual LGPL y MPL, diseñada específicamente para trabajar con archivos PDF. Permite generar y manipular documentos PDF, así como editar documentos existentes y extraer contenidos. OpenPDF es una herramienta muy práctica a la hora de trabajar con documentos PDF, ya sea creando nuevos o editando los existentes.
Crear PDF e imprimir: OpenPDF permite crear nuevos documentos PDF desde cero y utilizar la API de impresión de Java para imprimir un archivo PDF.
Dividir y combinar: OpenPDF puede dividir un único PDF en varios archivos o combinar varios archivos PDF en un único archivo PDF.
Extraer texto: OpenPDF permite extraer texto de archivos PDF y formularios PDF.
Firma: OpenPDF también permite a sus desarrolladores firmar digitalmente un PDF.
Guardar como imagen: OpenPDF puede guardar PDF como archivos de imagen, como JPEG o PNG.
Oficina a PDF: OpenPDF puede convertir MS Word, MS PowerPoint y MS Excel en documentos PDF.
Parsing HTML: También ofrece Parsear archivos HTML en archivos PDF.
La instalación de IronPDF for Java es un proceso sencillo, incluso para los nuevos desarrolladores de Java.
Para utilizar IronPDF for Java, necesitará un IDE. En este artículo, utilizaremos JetBrains IntelliJ IDE para la instalación y los ejemplos.
Para empezar, abra JetBrains IntelliJ IDE y cree un nuevo proyecto Maven.
Aparecerá una nueva ventana. Introduzca el nombre del proyecto y pulse el botón "Finalizar".
Tras hacer clic en "Finalizar", se abrirá un nuevo proyecto y el archivo pom.xml predeterminado. Esto es genial porque necesitamos añadir las dependencias Maven de IronPDF for Java a este archivo.
Añada las siguientes dependencias al archivo pom.xml.
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>com.ironsoftware</artifactId>
<version>2024.11.4</version>
</dependency>
Una vez añadidas las dependencias al archivo POM.xml, aparecerá un pequeño icono en la esquina superior derecha del archivo POM.xml.
Haga clic en este icono para instalar las dependencias Maven de IronPDF for Java. Este proceso puede tardar unos minutos, dependiendo de tu conexión a Internet.
La instalación de OpenPDF es similar a la de IronPDF for Java.
Para empezar, abre JetBrains IntelliJ IDE y crea un nuevo proyecto Maven
Aparecerá una nueva ventana. Introduzca el nombre del proyecto y pulse el botón "Finalizar".
Tras hacer clic en "Finalizar", se abrirá un nuevo proyecto y se mostrará el archivo pom.xml predeterminado. Esto es bueno, ya que necesitamos añadir las dependencias Maven de OpenPDF.
Añada la dependencia de OpenPDF a la sección de dependencias del archivo pom.xml.
<dependencies>
<dependency>
<groupId>com.github.librepdf</groupId>
<artifactId>openpdf</artifactId>
<version>1.3.30</version>
</dependency>
</dependencies>
Cuando añada el repositorio y el código de dependencia, aparecerá un pequeño icono en la esquina superior derecha del archivo pom.xml.
Haga clic en el icono para instalar las dependencias de OpenPDF para Java. Tras unos minutos, estará instalado y listo para su uso.
Además del atractivo para el usuario, el PDF también ofrece varias ventajas técnicas. Los archivos PDF son independientes de la plataforma y pueden leerse en cualquier sistema operativo o dispositivo. Además, conservan el formato y el diseño, lo que garantiza que el documento tenga el mismo aspecto independientemente de quién lo abra. Los archivos PDF también son compactos y se pueden compartir y almacenar fácilmente. Al utilizar PDF en su aplicación Java, puede proporcionar a sus usuarios un formato de documento eficiente y bien soportado que ofrece una amplia gama de funcionalidades y compatibilidad.
A continuación, explicaremos cómo crear un nuevo archivo PDF utilizando las bibliotecas IronPDF y OpenPDF.
Crear y editar archivos PDF con IronPDF for Java es fácil y sólo requiere unas pocas líneas de código. El siguiente es un ejemplo:
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
myPdf.saveAs(Paths.get("html_saved.pdf"));
}
}
La creación de un nuevo archivo PDF se puede hacer usando OpenPDF, a continuación se muestra el código utilizado para hacer precisamente eso:
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.Paragraph;
import com.lowagie.text.pdf.PdfWriter;
public class main {
/**
* Generates a PDF file with the text 'Hello World'
*/
public static void main(String [] args) {
System.out.println("Hello World");
Document document = new Document();
try {
PdfWriter.getInstance(document,
new FileOutputStream("HelloWorld.pdf"));
document.open();
document.add(new Paragraph("Hello World"));
} catch (DocumentException de) {
System.err.println(de.getMessage());
} catch (IOException ioe) {
System.err.println(ioe.getMessage());
}
document.close();
}
}
Las personas acceden con frecuencia a las páginas web. Hay varios sitios que puede consultar con regularidad. Visitar el sitio web cada vez puede no ser factible. Si necesitas acceder a la información con frecuencia, es más cómodo guardarla en un documento al que puedas acceder en cualquier momento desde tu teléfono o portátil. El formato PDF es una mejor opción, ya que ofrece las ventajas de la protección mediante contraseña, lo que hace que el documento sea seguro.
La conversión de HTML a PDF es una de las funciones más utilizadas de las bibliotecas PDF y casi todos los desarrolladores la utilizan debido a sus ventajas. En esta sección, discutiremos los ejemplos codificados tanto para IronPDF for Java como para OpenPDF.
El renderizador de última generación de IronPDF proporciona una conversión perfecta de HTML a PDF en tres métodos diferentes.
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
}
}
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) throws IOException {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> Example of HTML to PDF using IronPDF for Java </h1> IronPDF for java is robust Java API for creating, converting and manipulating PDF files");
myPdf.saveAs(Paths.get("html_saved.pdf"));
}
}
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.Paths;
public class main {
public static void main(String [] args) {
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://www.amazon.com/?tag=hp2-brobookmark-us-20");
try {
myPdf.saveAs(Paths.get("url.pdf"));
} catch (IOException e) {
e.printStackTrace();
}
}
}
La librería IronPDF ofrece funciones avanzadas de renderizado para convertir HTML a PDF de tres formas diferentes para una experiencia de conversión perfecta.
Por otro lado, OpenPDF sólo ofrece la opción de convertir archivos HTML en archivos PDF, careciendo de la función crucial de convertir URL en PDF, lo que podría ponerla en desventaja frente a otras bibliotecas.
import com.lowagie.text.Document;
import com.lowagie.text.DocumentException;
import com.lowagie.text.html.HtmlParser;
import com.lowagie.text.pdf.PdfWriter;
import java.io.FileOutputStream;
import java.io.IOException;
public class main {
/**
* Generates an HTML page with the text 'Hello World'
*
* @param args no arguments needed here
*/
public static void main(String [] args) {
System.out.println("Parse Hello World");
try (Document document = new Document()) {
PdfWriter.getInstance(document, new FileOutputStream("contact.pdf"));
document.open();
HtmlParser.parse(document, main.class.getClassLoader().getResourceAsStream("contact.html"));
} catch (DocumentException
IOException de) {
System.err.println(de.getMessage());
}
}
}
Convertir imágenes a PDF es ventajoso. Una de las ventajas es que puedes convertir las fotografías en un formato más legible y transferible. Otra ventaja es que reduce considerablemente el tamaño del archivo manteniendo la calidad de la imagen.
Con IronPDF, puede convertir fácilmente cualquier formato de imagen en un archivo PDF.
import com.ironsoftware.ironpdf.*;
import java.io.IOException;
import java.nio.file.DirectoryStream;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
public class main {
public static void main(String [] args) {
Path imageDirectory = Paths.get("assets/images");
List<Path> imageFiles = new ArrayList<>();
try (DirectoryStream<Path> stream = Files.newDirectoryStream(imageDirectory, "*.{png,jpg}")) {
for (Path entry : stream) {
imageFiles.add(entry);
} PdfDocument.fromImage(imageFiles).saveAs(Paths.get("assets/composite.pdf"));
} catch (IOException exception) {
throw new RuntimeException(String.format("Error converting images to PDF from directory: %s: %s",
imageDirectory,
exception.getMessage()),
exception);
}
}
}
OpenPDF también ofrece conversión de imágenes a PDF, pero en formatos limitados. Estos formatos son PNG, JPG y TIFF.
import java.io.FileOutputStream;
import java.io.IOException;
import com.lowagie.text.Document;
import com.lowagie.text.Image;
import com.lowagie.text.pdf.PdfWriter;
public class main {
public static void main(String [] args) {
System.out.println("Images");
// step 1: creation of a document-object
Document document = new Document();
try {
// step 2:
// we create a writer that listens to the document
// and directs a PDF-stream to a file
PdfWriter.getInstance(document, new FileOutputStream("Images.pdf"));
// step 3: we open the document
document.open();
// step 4:
document.add(new Image("11.png") {
});
Image jpg = Image.getInstance("11.png");
}
catch(DocumentException
IOException de) {
System.err.println(de.getMessage());
}
// step 5: we close the document
document.close();
}
}
IronPDF for Java es una potente biblioteca PDF que puede utilizarse tanto con fines personales como comerciales. Ofrece diversas opciones de licencia para desarrolladores, como licencias para un solo proyecto, redistribución SaaS y OEM, y licencias para empresas multinacionales. El coste del paquete Lite comienza en $749 USD, que incluye una licencia perpetua, 30 días de garantía de devolución del dinero y un año de soporte y actualizaciones del software. Una de las ventajas de IronPDF es que no tiene costes recurrentes, lo que significa que, una vez adquirida, la licencia puede utilizarse de por vida.
En los proyectos de los desarrolladores, las opciones de licencia desempeñan un papel crucial. OpenPDF es un software de código abierto, licenciado bajo los términos de la licencia de código abierto LGPL y MPL. Esto significa que cualquiera que utilice una aplicación que utilice OpenPDF(incluso a través de una red empresarial o de Internet) puede tener derecho a una copia completa del código fuente del programa si se licencia bajo LGPL y MPL, lo que lo hace ideal para fines académicos. Sin embargo, para proyectos comerciales, siempre es recomendable ponerse en contacto con OpenPDF para obtener una estimación de los costes asociados.
Los desarrolladores Java y los profesionales de TI pueden integrar fácilmente PDF en sus aplicaciones Java utilizando la biblioteca IronPDF. Ofrece una amplia gama de funciones, como formatear archivos PDF, generar tablas y gráficos, convertir HTML e imágenes a PDF, dividir y combinar archivos PDF y modificar documentos PDF. IronPDF es compatible con todas las versiones de Java a partir de Java 8 y también con lenguajes JVM como Java, Kotlin y Scala. La biblioteca también está equipada con funciones de seguridad mejoradas para documentos PDF.
OpenPDF es una biblioteca Java gratuita de código abierto con licencia LGPL y MPL. Permite crear y modificar documentos PDF y extraer su contenido. Aunque OpenPDF es útil para producir nuevos documentos PDF o editar los existentes, no tiene tantas funciones como IronPDF para manipular archivos PDF.
No es posible comparar IronPDF y OpenPDF basándose únicamente en sus licencias, ya que una es una biblioteca comercial y la otra es de código abierto. Sin embargo, en términos de funciones, OpenPDF tiene opciones limitadas para manipular archivos PDF. Por otro lado, IronPDF for Java proporciona unalicencia de prueba gratuita para que los desarrolladores prueben la biblioteca y sus funciones avanzadas.
IronPDF ofrece muchas más funciones que OpenPDF. Además, IronPDF proporciona una gran cantidad de documentación, lo que hace que escribir código con la biblioteca sea muy sencillo. OpenPDF tiende a producir código largo y complejo, y hay muy poca documentación disponible para él.
La conversión de HTML a PDF de OpenPDF no es adecuada para archivos HTML de gran tamaño y no admite la conversión de URL a PDF.
9 productos API .NET para sus documentos de oficina