Cómo convertir un documento XML a PDF

Escrito por david gitonga
  • Comparte
  • Twittea
  • Comparte
  • E-mail

XML es un formato de intercambio de datos, mientras que Adobe PDF es el formato más común para una presentación de datos. De modo que si tienes un archivo XML que contiene datos a presentar, necesitarás convertirlos a PDF. Hay un número de herramientas disponibles para hacerlo. El Apache FOP API es un procesador de código abierto que traduce el documento a una plantilla XSL antes de convertirlo en el producto final PDF.

Nivel de dificultad:
Difícil

Otras personas están leyendo

Instrucciones

    Configuración del entorno

  1. 1

    Descarga el archivo FOP JAR del sitio web de Apache (Ver Recursos más abajo).

  2. 2

    Descomprime el archivo ZIP en una carpeta. Haz clic con el botón derecho en "extraer todo..." y sigue las indicaciones hasta completar la tarea.

  3. 3

    Crea una aplicación y un proyecto en JDeveloper haciendo clic en "Archivo", "Nuevo", "Galería", "Categorías", "General" y "XML"; y crea un documento XML.

  4. 4

    Haz clic en "Aceptar"

  5. 5

    Crea un archivo XML (ver Recursos más abajo) y especifica su nombre, por ejemplo: "catálogo.xml". Este archivo se agregará el proyecto ApacheFOP.

  6. 6

    Crea una plantilla XSL para convertir el documento XML a XSL-FO; para hacerlo ve a "Archivo", "Nuevo", "Galería", "Categorías", "General", "XML", "Ítems", y "Plantilla XSL".

  7. 7

    Haz clic en "Aceptar".

  8. 8

    Especifica un nombre para el archivo en "Crear archivo XSL", por ejemplo: catálogo.xsl. Este archivo también se agregará al proyecto ApacheFOP.

  9. 9

    Añade un tipo de Java utilizando la aplicación Java (XMLToPDF.java) haciendo clic en "Archivo", "Nuevo", "Galería", "Categorías", "General", "Ítems", "Java".

  10. 10

    Haz clic en "Aceptar".

  11. 11

    Crea un tipo de Java especificando un nombre de arriba, XMLToPDF, y haz clic en "Aceptar". Esto agrega el tipo de Java al proyecto ApacheFOP.

  12. 12

    Utiliza el "Navegador de la aplicación" para ver la estructura del directorio y asegurarte de que todos los archivos están incluidos.

  13. 13

    Agrega los archivos FOP JAR seleccionando "Nodo ApacheFOP", "Herramientas", "Propiedades del proyecto" y "Bibliotecas y Classpath".

  14. 14

    Utiliza el botón "Agregar biblioteca" para añadir "Oracle XML Parser V2".

  15. 15

    Utiliza el botón "Agregar carpeta JAR" y navega hasta la carpeta donde está instalado Apache FOP. Este es el directorio de la variable.

  16. 16

    Haz clic en "Aceptar".

    Primera conversión

  1. 1

    Copia el listado del catálogo.xsl al archivo catálogo.xsl que se encuentra en el proyecto JDeveloper. Utiliza el "Navegador de la aplicación" para llegar hasta el archivo.

  2. 2

    Abre la aplicación Java haciendo clic en "Archivo", "Nuevo", "Galería", "Categorías", "General", "Ítems", "Java".

  3. 3

    Crea una instancia de objeto DocumentBuilderFactory en la ventana de la aplicación Java abierta arriba, de la manera que se detalla a continuación: DocumentBuilderFactory factory + DocumentBuilderFactory.newInstance(); Usando el método newDocumentBuilder(), crea un DocumentBuilder parser como se detalla a continuación: DocumentBuilder builder = factory.newDocumentBuilder();

  4. 4

    Convierte el documento de prueba XML en la ventana de la aplicación Java abierta como se detalla a continuación: File xmlFile = new File (catalog.xml); Document document = builder.parse(xmlFile);

    Convertir a PDF

  1. 1

    Crea y transforma el objeto documento en la ventana de la aplicación Java abierta usando el siguiente código:TransformerFactory transformerFactory = TransformerFactory.newInstance(); File stylesheet = new File("catalog.xsl"); Transformer transformer = transformerFactory.newTransformer(new StreamSource(stylesheet)); DOMSource source = new DOMSource(document); StreamResult result = new StreamResult(new File("catalog.fo")); transformer.transform(source, result);

  2. 2

    Convierte el objeto catalog.fo creado en la sección previa utilizando el dispositivo FOP escribiendo el código debajo, en la aplicación de Java "XMLToPDF.java" como se detalla a continuación: import org.apache.fop.apps.Driver; import org.apache.avalon.framework.logger.Logger; import org.apache.avalon.framework.logger.ConsoleLogger; Driver driver=new Driver(); Logger logger=new ConsoleLogger(ConsoleLogger.LEVEL_INFO); driver.setLogger(logger); org.apache.fop.messaging.MessageHandler.setScreenLogger(logger); File xslFOFile=new File("catalog.fo"); InputStream input=new FileInputStream(xslFOFile); driver.setInputSource(new InputSource(input)); File pdfFile=new File("catalog.pdf"); OutputStream output=new FileOutputStream(pdfFile); driver.setOutputStream(output); driver.run(); public static void main(String[] argv){ XMLToPDF fop=new XMLToPDF(); fop.xmlToFO(); fop.foToPDF(); } }

  3. 3

    Haz clic en "Navegador de la aplicación" y luego clic derecho en el nodo "Aplicación Java" y "Ejecutar" para generar el documento catalog.pdf.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles