COMPARACIóN DE PRODUCTOS

Comparación entre IronPDF for Java y jPDFPrint

Publicado en 16 de mayo, 2023
Compartir:

Introducción

PDF (Formato de documento portátil) es un formato de archivo ampliamente utilizado para representar documentos de manera independiente del software de aplicación, software de terceros o controladores, hardware y sistemas operativos como macOS. Manipular archivos PDF programáticamente sin intervención del usuario es un requisito común en diversas aplicaciones. Este artículo explora dos bibliotecas de Java, IronPDF y jPDFPrint, que proporcionan capacidades para manipular archivos PDF de diferentes maneras en un entorno de ejecución de Java. Nos adentraremos en sus características, funcionalidades y compararemos sus ofertas para comprender sus fortalezas y debilidades y cómo se diferencia de usar documentos PDF de Acrobat directamente.

Una Comparación Entre IronPDF para Java y jPDFPrint: Figura 1 - Cómo Convertir HTML a PDF en Java

Visión general de IronPDF

IronPDF es una potente biblioteca de Java que permite a los desarrolladores crear, manipular y convertir archivos PDF programáticamente. Proporciona una amplia gama de funcionalidades, como generar PDFs a partir de HTML, imágenes o documentos existentes, combinar múltiples PDFs, extraer texto e imágenes de PDFs y realizar diversas tareas de manipulación de documentos.

Una Comparación Entre IronPDF For Java y jPDFPrint: Figura 2 - Una Comparación Entre IronPDF For Java & jPDFPrint – Biblioteca PDF de Java

IronPDF ofrece una API fácil de usar con un conjunto completo de métodos y propiedades, lo que facilita a los desarrolladores trabajar directamente con documentos PDF de Acrobat. También proporciona una extensa documentación y tutoriales para guiar a los desarrolladores en el proceso de integración de IronPDF en sus aplicaciones Java.

Una de las características notables de IronPDF es su capacidad para convertir HTML a PDF. Con esta funcionalidad, los desarrolladores pueden generar fácilmente documentos PDF a partir de contenido HTML, incluyendo estilos CSS, interactividad JavaScript e incluso datos dinámicos.

Código de muestra: Generar PDF desde HTML usando IronPDF

import com.ironpdf.*;
 public class HtmlToPdfExample {
  public static void main(String [] args) {
   HtmlToPdfRenderer renderer = new HtmlToPdfRenderer();
   HtmlToPdfOutput output = renderer.RenderHtmlFileAsPdf("input.html");
   output.saveAs("output.pdf");
   }
}
JAVA

Descripción general de jPDFPrint

jPDFPrint es una biblioteca Java desarrollada por software de terceros Qoppa que se centra específicamente en imprimir documentos PDF mediante programación en un entorno de ejecución de Java. Proporciona una API simple y directa para imprimir documentos PDF utilizando el servicio de impresión de documentos de Java.

Una Comparación entre IronPDF For Java y jPDFPrint: Figura 3 - jPDFPrint

jPDFPrint permite a los desarrolladores imprimir documentos PDF en cualquier impresora instalada en el sistema, controlar la carga y los ajustes de impresión del documento, como el rango de páginas, la orientación y el escalado, e incluso especificar comandos de impresora personalizados, si es necesario. También admite funciones como la impresión a doble cara, la impresión de folletos, la impresión silenciosa sin intervención del usuario y la adición de marcas de agua.

La biblioteca se integra perfectamente con aplicaciones Java, permitiendo a los desarrolladores incorporar fácilmente la funcionalidad de impresión de PDF en sus soluciones de software de aplicaciones Java.

Código de Ejemplo: Imprimir documentos PDF usando jPDFPrint

//import Qoppa third party software to simply call the library
import com.qoppa.pdfPrinter.PDFPrinterJob;
import java.io.File;
import java.io.IOException;
import java.net.URL;
public class HtmlToPdfExample {
    public static void main(String [] args) throws IOException {
        // Load the HTML page
        URL url = new URL("http://www.example.com");
        String html = org.apache.commons.io.IOUtils.toString(url);
        // Create a PDFPrinterJob object
        PDFPrinterJob printerJob = new PDFPrinterJob();
        // Set the output file
        File outputFile = new File("output.pdf");
        printerJob.setOutputFile(outputFile);
        // Print the HTML page to the output file
        printerJob.printHTML(html);
    }
}
JAVA

Comparación de la API de impresión de PDF en Java jPDFPrint vs. IronPDF

Ambas bibliotecas son muy sofisticadas y útiles para manipular documentos PDF, como imprimir documentos PDF y convertir documentos de Microsoft Word a documentos PDF.

Usando jPDFPrint Java PDF Print API para imprimir documentos PDF de Acrobat

jPDFPrint es una biblioteca de Java desarrollada por Qoppa Software utilizando la tecnología PDF propietaria de Qoppa, que se enfoca en la carga y la impresión programática de archivos PDF. Aquí hay una visión general de cómo usarlo:

  1. Importar las Clases Requeridas: Comience importando las clases necesarias de la biblioteca jPDFPrint en su aplicación Java.
    package jPDFPrintSamples;
    import java.io.FileOutputStream;
    import javax.print.DocFlavor;
    import javax.print.DocPrintJob;
    import javax.print.SimpleDoc;
    import javax.print.StreamPrintService;
    import javax.print.StreamPrintServiceFactory;
    import javax.print.attribute.HashPrintRequestAttributeSet;
    import javax.print.attribute.PrintRequestAttributeSet;
    import javax.print.attribute.standard.MediaSizeName;
JAVA
  1. Crear un objeto PDFPrint: Cree una instancia de la clase PDFPrint y pase la ruta del archivo PDF que desea imprimir como parámetro.
  2. Configurar Ajustes de Impresión: Personalice los ajustes de impresión usando los métodos proporcionados por la clase PDFPrint. Puedes establecer el nombre de la impresora, especificar el rango de páginas, seleccionar bandejas de papel, elegir la calidad de impresión y configurar otras opciones de impresión para imprimir documentos PDF.
  3. Imprimir el PDF: Llame al método print en el objeto PDFPrint para iniciar el proceso de impresión. La biblioteca utilizará el Servicio de Impresión de Java para enviar el archivo PDF a la impresora.
    package jPDFPrintSamples;
    import java.io.FileOutputStream;
    import javax.print.DocFlavor;
    import javax.print.DocPrintJob;
    import javax.print.SimpleDoc;
    import javax.print.StreamPrintService;
    import javax.print.StreamPrintServiceFactory;
    import javax.print.attribute.HashPrintRequestAttributeSet;
    import javax.print.attribute.PrintRequestAttributeSet;
    import javax.print.attribute.standard.MediaSizeName;
    import com.qoppa.pdfPrint.PDFPrint;
    public class PDFToPS
    {
        public static void main (String [] args)
        {
            try
            {
                DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
                String psMimeType = DocFlavor.BYTE_ARRAY.POSTSCRIPT.getMimeType();
                StreamPrintServiceFactory [] factories = StreamPrintServiceFactory.lookupStreamPrintServiceFactories(flavor, psMimeType);
                System.out.println ("Available PS services: " + factories.length);
                if(factories.length == 0)
                {
                    System.err.println ("No PS factories available!");
                    System.exit(0);
                }
                // Open the PDF file
                PDFPrint pdfPrint = new PDFPrint ("test.pdf", null);
                // Open the output file
                FileOutputStream fos = new FileOutputStream("output.ps");
                // Use the first service available
                StreamPrintService sps = factories [0].getPrintService(fos);
                DocPrintJob pj = sps.createPrintJob();
                // Define paper size
                PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
                aset.add(MediaSizeName.NA_LETTER);
                // Create simple doc using PDFPrint as Printable and print it
                SimpleDoc doc = new SimpleDoc(pdfPrint, flavor, null);
                pj.print(doc, aset);
                // Close the output PS stream
                fos.close();
            }
            catch (Throwable t)
            {
                t.printStackTrace();
            }
        }
    }
JAVA

Una comparación entre IronPDF para Java y jPDFPrint: Figura 4 - Lectura de PDFs en Java

Usando IronPDF Java para imprimir documentos

IronPDF es una potente biblioteca de Java utilizada en el Aplicación Java para la manipulación de PDF, incluyendo la generación, conversión y manipulación de documentos. A continuación se muestra una descripción general de cómo usar IronPDF:

  1. Importar las Clases Necesarias: Comience importando las clases necesarias de la biblioteca IronPDF en su aplicación Java.
    import com.ironsoftware.ironpdf.*;
JAVA
  1. Generación de PDF: Para generar un documento PDF, tienes varias opciones con IronPDF. Por ejemplo, puede convertir entrada de Java, contenido HTML a PDF usando el HtmlToPdfRenderer clase que es el comando de impresión de un documento PDF, como se muestra en el código de ejemplo para imprimir en silencio o enviar documentos a PDF. También puede crear documentos PDF programáticamente agregando elementos como texto, imágenes, tablas y anotaciones.
    import com.ironsoftware.ironpdf.*;  
    import java.io.IOException;  
    import java.nio.file.Paths;  
    // Apply your license key
    License.setLicenseKey("YOUR-LICENSE-KEY");
    // Set a log path
    Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
    // Render the HTML as a PDF. Stored in myPdf as type PdfDocument;
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
    // Save the PdfDocument to a file
    myPdf.saveAs(Paths.get("html_saved.pdf"));
JAVA
  1. Manipulación de Documentos: IronPDF proporciona una variedad de métodos y propiedades para manipular documentos PDF existentes. Puedes combinar varios PDFs en un solo documento, dividir un PDF en múltiples archivos, extraer texto e imágenes, agregar marcas de agua, encriptar y desencriptar PDFs, y mucho más.
    import com.ironsoftware.ironpdf.PdfDocument;
    import com.ironsoftware.ironpdf.font.FontTypes;
    import com.ironsoftware.ironpdf.headerfooter.TextHeaderFooter;
    import com.ironsoftware.ironpdf.headerfooter.HeaderFooterOptions;
    import java.io.IOException;
    // Initialize HeaderFooterOptions object.
    HeaderFooterOptions options = new HeaderFooterOptions();
    PdfDocument pdf = PdfDocument.renderUrlAsPdf("http://www.google.com");
    // Add a header to every page easily
    // Mergeable fields are:
    // {page} {total-pages} {url} {date} {time} {html-title} & {pdf-title}
    options.setFirstPageNumber(1); // use 2 if a cover page  will be appended
    TextHeaderFooter textHeader = new TextHeaderFooter();
    textHeader.setDrawDividerLine(true);
    textHeader.setCenterText("{url}");
    textHeader.setFont(FontTypes.getHelvetica());
    textHeader.setFontSize(12);
    pdf.addTextHeader(textHeader, options);
    // Add a footer too
    TextHeaderFooter textFooter = new TextHeaderFooter();
    textFooter.setDrawDividerLine(true);
    textFooter.setFont(FontTypes.getArial());
    textFooter.setFontSize(10);
    textFooter.setLeftText("{date} {time}");
    textFooter.setRightText("{page} of {total-pages}");
    pdf.addTextFooter(textFooter, options);
    try {
        pdf.saveAs(Paths.get("assets/text_headers_footers.pdf"));
    } catch (IOException e) {
        System.out.println("Failed to save PDF");
        throw new RuntimeException(e);
    }
JAVA
  1. Conversión de PDF: Además de generar PDF desde HTML, IronPDF le permite convertir o imprimir documentos Acrobat PDF a varios formatos, como imágenes. (JPEG, PNG, TIFF), HTML e incluso hojas de cálculo de Excel.
    try {
        List<BufferedImage> images = pdf.extractAllImages();
        System.out.println("Number of images extracted from the website: " + images.size());
        int i = 0;
        for (BufferedImage image : images) {
            ImageIO.write(image, "PNG", Files.newOutputStream(Path.of("assets/extracted_" + ++i + ".png")));
        }
    } catch(Exception exception) {
        System.out.println("Failed to extract images from the website");
        exception.printStackTrace();
    }
JAVA
  1. Guardar y Salida: Una vez que haya generado o manipulado el documento PDF, puede guardarlo en una ubicación específica utilizando el método saveAs para enviar documentos a un flujo o respuesta HTTP.

Preferencia por IronPDF

Aunque tanto jPDFPrint como IronPDF ofrecen capacidades de manipulación de PDF, IronPDF proporciona un conjunto más completo de funcionalidades y flexibilidad. IronPDF se destaca en varios aspectos:

  1. Conversión de HTML a PDF: IronPDF destaca en la conversión de contenido HTML a PDF, lo que lo convierte en una opción adecuada para aplicaciones que requieren la generación dinámica de PDFs a partir de páginas web o plantillas HTML.
    import com.ironsoftware.ironpdf.*;  
    import java.io.IOException;  
    import java.nio.file.Paths;  
    // Apply your license key
    License.setLicenseKey("YOUR-LICENSE-KEY");
    // Set a log path
    Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
    // Render the HTML as a PDF. Stored in myPdf as type PdfDocument;
    PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
    // Save the PdfDocument to a file
    myPdf.saveAs(Paths.get("html_saved.pdf"));
JAVA
  1. Manipulación Exhaustiva de Documentos: IronPDF ofrece una amplia gama de características para la manipulación de documentos, incluyendo la combinación, división, extracción de texto e imágenes, encriptación y más. Esto lo convierte en una herramienta versátil para trabajar con archivos PDF.
  2. Alcance Ampliado: IronPDF cubre una amplia gama de tareas relacionadas con PDF más allá de la mera impresión, convirtiéndolo en una solución más robusta para aplicaciones que requieren capacidades comprensivas de manipulación de PDF.
  3. Documentación y soporte extensivos: IronPDF ofrece una documentación amplia, tutoriales y un equipo de soporte dedicado para ayudar a los desarrolladores a integrar la biblioteca y resolver cualquier problema que pueda surgir durante el desarrollo.
    import com.ironsoftware.ironpdf.PdfDocument;
    import java.io.IOException;
    import java.nio.file.Paths;
    // Case 1: Generate a PDF from a string of Rich Text Content
    try {
        String content = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\nouicompat\\deflang1033{\\fonttbl{\\f0\\fnil\\fcharset0 Calibri;}}\n" +
                "{\\*\\generator Riched20 10.0.22621}\\viewkind4\\uc1 \n" +
                "\\pard\\sa200\\sl276\\slmult1\\b\\f0\\fs160\\lang9 Hello, world!\\par\n" +
                "}\n" +
                " ";
        PdfDocument pdf = PdfDocument.renderRtfAsPdf(content);
        pdf.saveAs(Paths.get("assets/rtf_to_pdf.pdf"));
    } catch(IOException exception) {
        exception.printStackTrace();
    }
    // Case 2: Generate a PDF from a RTF file located on a filesystem path
    try {
        PdfDocument pdf = PdfDocument.renderRtfFileAsPdf(Paths.get("assets/test.rtf"));
        pdf.saveAs(Paths.get("assets/rtf_to_pdf_2.pdf"));
    } catch(IOException exception) {
        exception.printStackTrace();
    }
JAVA

Dadas estas ventajas, los desarrolladores que busquen una solución potente y flexible para la manipulación de PDF con capacidades de conversión de HTML a PDF, extensas características de manipulación de documentos y excelente soporte deberían dar preferencia a IronPDF sobre jPDFPrint.

Sin embargo, es esencial evaluar los requisitos específicos de su proyecto y analizar las características, la documentación y el soporte ofrecidos por cada biblioteca para tomar una decisión informada que se alinee con las necesidades de su aplicación.

Comparando las características de jPDFPrint con IronPDF

1. Funcionalidad

jPDFPrint se centra únicamente en la impresión de archivos PDF y ofrece un control extenso sobre el proceso de impresión.

package jPDFPrintSamples;
import com.qoppa.pdfPrint.PDFPrint;
public class SimplePrint
{
    public static void main (String [] args)
    {
        try
        {
            PDFPrint pdfPrint = new PDFPrint("input.pdf", null);
            pdfPrint.print(null);
        }
        catch (Throwable t)
        {
            t.printStackTrace();
        }
    }
}
JAVA

IronPDF ofrece una gama más amplia de funcionalidades, incluyendo la generación de PDF a partir de HTML, manipulación de documentos, extracción de texto e imágenes, y más.

// Import statement for IronPDF Java
import com.ironsoftware.ironpdf.*;
// Apply your license key
License.setLicenseKey("YOUR-LICENSE-KEY");
// Set a log path
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
// Render the URL page as a PDF. Stored in myPdf as type PdfDocument
PdfDocument myPdf = PdfDocument.renderUrlAsPdf("/java");
// Save the PdfDocument to a file
myPdf.saveAs(Paths.get("url_saved.pdf"));
PdfDocument pdfDocument = PdfDocument.renderUrlAsPdf("/java");
JAVA

2. Diseño de API

jPDFPrint tiene una API sencilla diseñada específicamente para la impresión de PDF. Proporciona métodos y propiedades para manejar los ajustes de impresión e interactuar con las impresoras.

IronPDF ofrece una API completa con un alcance más amplio de funcionalidad. Proporciona métodos y propiedades para crear, manipular y convertir documentos PDF, junto con un amplio soporte para la conversión de HTML a PDF.

Integración y facilidad de uso

jPDFPrint se integra perfectamente con aplicaciones Java y simplifica las tareas de impresión de PDF. Está bien documentado y es fácil de integrar en proyectos existentes.

IronPDF proporciona una API fácil de usar con documentación y tutoriales exhaustivos. Su amplio conjunto de características puede requerir más esfuerzo para aprender e integrar, pero sus capacidades ofrecen una gama más amplia de posibilidades para la manipulación de PDFs.

4. Conversión de HTML a PDF

IronPDF sobresale en la conversión de HTML a PDF, permitiendo a los desarrolladores generar documentos PDF directamente desde contenido HTML, incluyendo el estilo CSS y la interactividad de JavaScript.

jPDFPrint no proporciona capacidades nativas de conversión de HTML a PDF. Su principal enfoque es imprimir archivos PDF existentes en lugar de generarlos a partir de HTML.

Una comparación entre IronPDF for Java y jPDFPrint: Figura 5

5. Funciones de Impresión

jPDFPrint ofrece funciones avanzadas de impresión como impresión a doble cara, impresión de folletos, marca de agua y más. Ofrece un control detallado sobre el proceso de impresión y permite la personalización de los comandos de la impresora.

Por otro lado, IronPDF no se especializa en características de impresión. Su principal fortaleza radica en la generación, manipulación y extracción de PDF.

Una Comparación Entre IronPDF For Java y jPDFPrint: Figura 6

6. Comunidad y Soporte

Tanto IronPDF como jPDFPrint tienen comunidades activas y brindan soporte para desarrolladores. La tecnología PDF propietaria de Qoppa, creadora de jPDFPrint, ofrece documentación completa, tutoriales y soporte al cliente receptivo. IronPDF también proporciona una extensa documentación y recursos, incluyendo tutoriales y un equipo de soporte dedicado.

7. Licencias y precios

Los modelos de licenciamiento y precios difieren entre IronPDF y jPDFPrint. Los desarrolladores deben considerar los requisitos de su proyecto, el presupuesto y las restricciones de licencia al elegir entre las dos bibliotecas.

IronPDF ofrece una estructura de precios sencilla y abierta basada en la cantidad de desarrolladores que utilizarán el producto. Una licencia se puede comprar para un solo desarrollador, un grupo de desarrolladores o una organización con un número ilimitado de desarrolladores. Los costos son los siguientes:

  1. Desarrollador individual: $749 anualmente
  2. Equipo: $1,499 anuales
  3. Negocios: $2,999 anuales

    Puede usar IronPDF en cualquier cantidad de proyectos con la compra de una licencia, y obtendrá actualizaciones gratuitas y soporte técnico durante un año. Tiene la opción de renovar su licencia a un costo menor después del primer año.

    Una comparación entre IronPDF for Java y jPDFPrint: Figura 7 - Opciones de Licenciamiento

    Las licencias perpetuas, anuales y por suscripción son solo algunas de las opciones de licencia que Qoppa PDF ofrece. Dependiendo de las partes específicas y la funcionalidad que necesite, el precio varía. Por ejemplo, una licencia perpetua del Qoppa PDF Automation Server cuesta $4,000, mientras que una licencia anual cuesta $1,500.

    Qoppa PDF también proporciona un esquema de licencias basado en regalías para la orquestación de servicios web. Esto implica que se le cobrará según el volumen de archivos PDF que procese su servicio en línea.

    Una comparación entre IronPDF para Java y jPDFPrint: Figura 8 - Opciones de Licenciamiento del Software jPDFPrint

Conclusión

IronPDF for Java y las bibliotecas jPDFPrint Java ofrecen características distintas para la manipulación de PDF. Mientras jPDFPrint se centra en la impresión programada de archivos PDF con funciones avanzadas y control detallado, IronPDF ofrece un conjunto completo de funcionalidades, incluida la generación de PDF a partir de HTML, la manipulación de documentos y la extracción. IronPDF es una biblioteca de PDF versátil para Java que permite a los desarrolladores manipular archivos PDF programáticamente. Proporciona una funcionalidad extensa, como la creación, edición, combinación, división y conversión de PDF desde HTML. IronPDF ofrece una API fácil de usar, características intuitivas y documentación completa que simplifican el proceso de desarrollo para la manipulación de PDF.

Por otro lado, jPDFPrint es una biblioteca de Java diseñada específicamente para imprimir archivos PDF programáticamente. Ofrece funciones avanzadas, como la selección de impresora, la selección de rango de páginas, la impresión a doble cara y los ajustes de tamaño y orientación del papel. jPDFPrint también ofrece una API intuitiva, documentación detallada y un excelente soporte al cliente.

IronPDF ofrece una estructura de precios más sencilla y abierta que jPDFPrint. El modelo de licenciamiento de IronPDF se basa en el número de desarrolladores que usarán la biblioteca, con opciones para un solo desarrollador, un equipo de desarrolladores o una organización con un número ilimitado de desarrolladores. Las licencias de IronPDF son ligeramente más baratas que las de jPDFPrint, con precios que van desde $749 hasta $5,999 por año, dependiendo del tipo de licencia. IronPDF también ofrece actualizaciones gratuitas y soporte técnico durante el primer año, con la opción de renovar a un costo menor.

En términos de capacidades técnicas, IronPDF ofrece un conjunto de funcionalidades más completo que jPDFPrint. IronPDF permite a los desarrolladores manipular archivos PDF de múltiples maneras, incluida la creación, edición, fusión, división y conversión de PDF desde HTML. IronPDF también proporciona una documentación extensa, una API fácil de usar y una interfaz intuitiva que simplifica el proceso de desarrollo para la manipulación de PDF.

Productos de Iron Software - Los desarrolladores que deseen comprar IronPDF o cualquier otro producto de Iron Software pueden aprovechar la oferta "Compre 5, Pague 2" disponible en el sitio web de Iron Software. Esta oferta brinda un descuento sustancial para los desarrolladores que compren múltiples productos de Iron Software, incluidos IronPDF, IronOCR e IronBarcode, entre otros.

< ANTERIOR
Mejor biblioteca PDF Java (Comparación de pros y contras)
SIGUIENTE >
Comparación entre IronPDF for Java y Qoppa Software - Biblioteca PDF Java

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

Descarga gratuita de Maven Ver licencias >