En este artículo, aprenderá cómo convertir XML a PDF mediante programación usando Java. Esta función puede resultar útil para generar archivos PDF de forma dinámica a partir del XML. Además, el artículo también proporciona el esquema XML completo que se utiliza para crear un documento PDF.
- API de Java para la conversión de XML a PDF
- Esquema XML admitido para la generación de PDF
- Convertir XML a PDF en Java
API de conversión de XML a PDF de Java
Para generar archivos PDF a partir de XML, utilizaremos Aspose.PDF for Java. La API está diseñada para crear, procesar y convertir archivos PDF dinámicamente desde las aplicaciones Java. Puede descargar el JAR de la API o instalarlo usando las siguientes configuraciones de Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>21.6</version>
</dependency>
Esquema de soporte para XML a PDF
Aspose.PDF for Java proporciona su esquema XML para definir la estructura del documento PDF. Puede encontrar el esquema XML completo aquí.
Convertir XML a PDF en Java
Veamos cómo convertir un XML dado a PDF usando Aspose.PDF for Java. La mayoría de las veces, tendrá el documento XML que contiene los datos de la aplicación. En este caso, primero lo transformará al XML compatible con Aspose.PDF usando XSLT. Vamos a empezar.
Los siguientes son los datos XML de muestra que necesitamos para convertir al documento PDF.
<?xml version="1.0" encoding="utf-8" ?>
<Contents>
<Content>Hello World!</Content>
</Contents>
Para que estos datos sean compatibles con Aspose.PDF XML, realizaremos una transformación XSLT. Para ello definiremos una plantilla en un archivo de hoja de estilo XSLT, como se muestra a continuación.
<?xml version="1.0" encoding="utf-8" ?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:template match="text()"/>
<xsl:template match="/Contents">
<html>
<Document xmlns="Aspose.Pdf" IsAutoHyphenated="false">
<PageInfo>
<DefaultTextState Font = "Helvetica" FontSize="8" LineSpacing="4"/>
<Margin Left="5cm" Right="5cm" Top="3cm" Bottom="15cm" />
</PageInfo>
<Page id="mainSection">
<TextFragment>
<TextSegment>
<xsl:value-of select="Content"/>
</TextSegment>
</TextFragment>
</Page>
</Document>
</html>
</xsl:template>
</xsl:stylesheet>
Una vez que haya creado el archivo de plantilla, puede proceder a convertir XML a PDF siguiendo los pasos a continuación.
- Cree un objeto de la clase Document.
- Enlace XML usando el método Document.bindXml(String, String) al proporcionar archivos XML y XSLT.
- Convierta XML a PDF utilizando el método Document.save(String).
El siguiente ejemplo de código muestra cómo convertir un archivo XML a PDF usando Java.
// Crear un nuevo documento PDF
com.aspose.pdf.Document pdfDocument = new com.aspose.pdf.Document();
// Transformar y enlazar XML
pdfDocument.bindXml( "data.xml", "stylesheet.xslt");
// Generar PDF desde XML
pdfDocument.save( "generated-pdf.pdf");
PDF generado
Obtenga una licencia de API gratuita
Puede obtener una licencia temporal para utilizar la API sin limitaciones de evaluación.
Conclusión
En este artículo, aprendió cómo convertir XML a PDF usando Java. Puede integrar esta función en sus aplicaciones Java para generar archivos PDF a partir de XML. Puede obtener más información sobre la API PDF de Java utilizando la documentación, así como los ejemplos de código fuente disponibles en GitHub. En caso de que tenga alguna pregunta, no dude en hacérnosla saber a través de nuestro foro.