COMPARACIóN DE PRODUCTOS

Comparación entre IronPDF for Java y OpenPDF

Publicado en 10 de marzo, 2023
Compartir:

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:

-IronPDF for Java

  • OpenPDF

    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

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.

Características de IronPDF

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

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.

Características de OpenPDF

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.

Instalación de IronPDF for Java

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.

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 1: JetBrains IntelliJ IDE

El IDE IntelliJ de JetBrains

Aparecerá una nueva ventana. Introduzca el nombre del proyecto y pulse el botón "Finalizar".

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 2: Nombre del nuevo proyecto

Nuevo proyecto JetBrains IntelliJ

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.

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 3: Nuevo Nuevo proyecto con el archivo pom.xml abierto

Archivo pom.xml de un nuevo proyecto

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.

Comparación entre IronPDF for Java y OpenPDF for Java - Figura 4: pequeño icono en la esquina superior derecha del archivo

En IntelliJ, aparece un pequeño icono de Maven en la esquina superior derecha del archivo POM cada vez que se añaden o modifican dependencias.

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.

Instalación de OpenPDF

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

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 5: Nuevo proyecto Maven

Un nuevo proyecto Maven en IntelliJ

Aparecerá una nueva ventana. Introduzca el nombre del proyecto y pulse el botón "Finalizar".

Una comparación entre IronPDF for Java y OpenPDF for Java - Figura 6: Ventana de nuevo proyecto

Ventana Nuevo proyecto

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.

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 7: pom.xml abierto en JetBrains IDE

En IntelliJ, el archivo pom.xml se abre automáticamente después de crear un nuevo proyecto con el Asistente para nuevo proyecto.

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>
XML

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.

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 8: Ventana de JetBrains IDE con pom.xml abierto

pom.xml de un proyecto IntelliJ abierto.

Haga clic en el icono para instalar las dependencias de OpenPDF para Java. Tras unos minutos, estará instalado y listo para su uso.

Crear un nuevo archivo PDF

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 un nuevo archivo PDF con IronPDF

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"));
        }
    }
JAVA
Comparación entre IronPDF for Java y OpenPDF para Java - Figura 9: Ventana de JetBrains IDE con pom.xml abierto

Un PDF generado con IronPDF

Crear un nuevo archivo PDF con OpenPDF

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();
    }
}
JAVA
Comparación entre IronPDF for Java y OpenPDF para Java - Figura 10: PDF generado con OpenPDF

Un PDF generado con OpenPDF

Convertir HTML a PDF

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.

Convertir HTML a PDF con IronPDF

El renderizador de última generación de IronPDF proporciona una conversión perfecta de HTML a PDF en tres métodos diferentes.

Archivo HTML a 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.renderHtmlFileAsPdf("index.html");

        // Save the PdfDocument to a file
        myPdf.saveAs(Paths.get("html_file_saved.pdf"));
    }
}
JAVA
Comparación entre IronPDF for Java y OpenPDF para Java - Figura 11: Salida de HTML a PDF con IronPDF

Resultado de la conversión de un archivo HTML local a PDF mediante IronPDF

Cadena HTML a 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"));
    }
}
JAVA
Comparación entre IronPDF for Java y OpenPDF para Java - Figura 12: Salida de HTML a PDF con IronPDF

Resultado de la conversión de una cadena HTML a PDF con IronPDF

URL a 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();
        }
    }
}
JAVA
Comparación entre IronPDF for Java y OpenPDF para Java - Figura 13: Salida de HTML a PDF con IronPDF

Convertir una página web de Amazon.com en un PDF utilizando IronPDF

Convertir HTML a PDF con OpenPDF

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());
        }
    }
}
JAVA
Una Comparación entre IronPDF for Java y OpenPDF for Java - Figura 14: HTML a PDF usando OpenPDF

HTML a PDF con OpenPDF

Conversor de imágenes a PDF

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.

Conversor de imagen a PDF con IronPDF

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);
        }
    }
    }
JAVA
Una comparación entre IronPDF for Java y OpenPDF for Java - Figura 15: Conversión de imagen a PDF usando IronPDF

Conversión de imágenes a PDF con IronPDF

Conversor de imagen a PDF con OpenPDF

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();
    }
}
JAVA
Una Comparación entre IronPDF for Java y OpenPDF for Java - Figura 16: Conversión de Imagen a PDF con OpenPDF

Conversión de imágenes a PDF con OpenPDF

Precios y licencias

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.

Comparación entre IronPDF for Java y OpenPDF para Java - Figura 17: Licencias de IronPDF

Licencias IronPDF

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.

Conclusión

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.

< ANTERIOR
Comparación entre IronPDF for Java y Qoppa Software - Biblioteca PDF Java
SIGUIENTE >
Comparación entre IronPDF for Java y Spire.PDF Java

¿Listo para empezar? Versión: 2024.11 acaba de salir

Descarga gratuita de Maven Ver licencias >