Menu

Home

La aplicación XML2PDF permite renderizar un archivo PDF a partir de un XML mediante un XSL-FO.

La tarea fue bastante fácil, dado que la información abunda en la web, sin embargo solo se trabaja con la versión XSLT 1.0 dado que los procesadores para XSLT 2.0 no cumplen con los requerimientos para este proyecto, es decir que sean multi-plataforma y a la vez sean de código libre.

En el proceso de análisis, se decidió realizar el proceso de transformación pasando por los siguientes pasos:

Pasos Transforamción XML

Esto llevó a la codificación final de la aplicación XML2PDF. Esta aplicación fue encapsulada en un JAR ejecutable.

Al ejecutarlo por consola con el parámetro -h obtenemos el siguiente resultado:

$java -jar xml2pdf.jar -h
********************************************************************
*Uso de aplicación XML2PDF
*La aplicación está diseñada para tomar un XML y transformarlo a PDF
*mediante el uso de un transformador XSLT v1.0

*Agustín Salas Fernández
********************************************************************
Definición de parámetros: 

-rutas  :Las rutas corresponden a ubicaciones en disco, de los archivos a transformar. Estas rutas deben ser absolutas.
Ejemplo de uso  :java -jar xml2pdf.jar -rutas c:\test.xml c:\test.xsl c:\test.pdf

-string :Este parámetro indica que el XML y el XSL-FO serán pasados como Strings (<xml>contenido<xml>), por lo cual retornará un pdf codificado en base64
Ejemplo de uso  :java -jar xml2pdf.jar -string strXML strXSL

-unir   :Este parámetro indica que se uniran todos los PDFs en el orden que pasaron las rutas, debe ser combinado con el parámetro -rutaPdfUnidopara indicar la ruta al archivo que contrendrá las uniones de los PDFs pasados como parámetro.
Ejemplo de uso  :java -jar xml2pdf.jar -unir -rutaPdfUnido  c:\unidoDebug.pdf c:\1.pdf c:\2.pdf ... c:\n.pdf

-unirmultiples  :Este parámetro permite generar varios XML a partir de un mismo XSL, lo cual es mucho más optimo desde el punto de vista del tiempo de respuesta
Se usa adicionalmente los siguientes parámetros con el anterior:
-pdf    :Con este parámetro se le indica la Ruta al PDF que contendrá a todos los PDFs generados
-xsl    :Con este parámetro se le indica la Ruta al XSL-FO
-xmls   :COn este parámetro se le indica 1 o N rutas a los XML que se trabajaran con el XSL especificado
Ejemplo de uso  :java -jar xml2pdf.jar -unirmultiples -pdf c:\pdfFile.pdf -xsl c:\xslfile.xsl -xmls c:\xml1.xml c:\xml2.xml ... c:\xmln.xml

Nota    :Para usar en sistemas operativos diferentes, solo se debe usar lar rutas correspondientes al SO para localizar los archivos

Como se puede revisar en las opciones descritas en la ayuda, se puede generar PDF de varias maneras y de acuerdo a las necesidades, además si se requiere unir los PDFs generados, lo hace la misma aplicación.

Esta aplicación deja de parte del usuario la creación del XSL-FO para la generación del XML.

Descargar aplicación en formato JAR:

Project Admins: