Skip to content

XML to PDF Converter es ES

Pitanga Innovare edited this page Oct 2, 2025 · 2 revisions

Descripción (MVP1)

El pdf_generator es una herramienta de línea de comandos diseñada para convertir archivos XML en artículos en formato PDF.

Tecnologías

  • Python 3.x
  • lxml
  • python-docx
  • LibreOffice

Funcionalidades

  • Soporte de Idioma Único: Genera PDFs en un solo idioma, garantizando consistencia.
  • Tablas Complejas: Soporta tablas con celdas combinadas.
  • Diseño de Tablas: Decide automáticamente si la tabla debe ocupar toda la página o solo una columna.
  • Figuras: Soporta figuras remotas o locales.
  • Diseño de Figuras: Decide automáticamente si la figura debe ocupar toda la página o solo una columna.
  • Diseño en Dos Columnas: Adopta un diseño predeterminado de dos columnas para el texto.
  • Estilización de Secciones: Da formato automático a las secciones de acuerdo con su jerarquía.
  • Citas Simples: Da formato a las citas de manera limpia y directa.
  • Encabezados y Pies de Página:
    • Encabezado de la Primera Página: Incluye el nombre de la revista y el DOI del artículo.
    • Encabezados de las Páginas Siguientes: Incluyen el nombre de la revista y el título corto del artículo.
    • Pies de Página: Incluyen la numeración de páginas, detalles de la edición y “cite as” (en la primera página).
  • Formatos Intermedios: Soporta la generación de archivos intermedios en formato .docx.

Versiones Futuras

  • Versión con interfaz web.
  • Versión en formato de biblioteca.
  • Soporte para nuevas estructuras de documentos.
  • Nuevas plantillas para PDF.

Requisitos Previos

Para usar el conversor de XML a PDF, es necesario tener instalada la versión 24.2 de LibreOffice. Puedes descargarla directamente en este enlace o visitar el sitio web de LibreOffice.

Instalación

Packtools puede instalarse usando pip. Las siguientes secciones proporcionan instrucciones paso a paso para la instalación en sistemas Linux y Windows.

Linux

Crea una carpeta, entra en ella, crea un entorno virtual llamado .venv, actívalo e instala packtools:

mkdir scielo-packtools
cd scielo-packtools
python3 -m venv .venv
source .venv/bin/activate
pip install packtools>=4.10.0

Windows

Crea una carpeta, entra en ella, crea un entorno virtual llamado .venv e instala packtools:

md scielo-packtools
cd scielo-packtools
python3 -m venv .venv
.venv\Scripts\activate
pip install packtools>=4.10.0

Uso

Accede a la carpeta llamada scielo-packtools-v4.x

cd scielo-packtools-v4.x

Activa el entorno virtual

env\Scripts\activate

Para usar la utilidad pdf_generator, proporciona la ruta al archivo XML que representa un artículo y la ruta deseada para el PDF de salida. Opcionalmente, puedes proporcionar un archivo de diseño DOCX para el formato. Hay un archivo de diseño predeterminado aquí, que contiene un conjunto de estilos DOCX predefinidos utilizados para dar formato al contenido del artículo.

Argumentos de Línea de Comandos

usage: pdf_generator [-h] -i PATH_TO_READ [-l LAYOUT] -o PATH_TO_WRITE

Convierte un archivo XML en formato SciELO a PDF.

argumentos opcionales:
  -h, --help            muestra este mensaje de ayuda y sale
  -i PATH_TO_READ, --xml_scielo PATH_TO_READ
                        Ruta para leer el archivo XML.
  -l LAYOUT, --layout LAYOUT
                        Ruta para leer el archivo de diseño DOCX.
  -o PATH_TO_WRITE, --pdf PATH_TO_WRITE
                        Ruta para guardar el archivo PDF generado.

Ejemplo

pdf_generator -i path/to/article.xml -o path/to/article.pdf

Si tienes un archivo de diseño DOCX personalizado, puedes utilizarlo como se indica a continuación:

pdf_generator -i path/to/article.xml -l path/to/layout.docx -o path/to/article.pdf

Salida:

Documento intermedio guardado en path/to/article.docx
convert /home/user/article.docx as a Writer document -> /home/user/article.pdf using filter : writer_pdf_Export

Capturas de Pantalla

image

Figura 1. Archivo XML utilizado como entrada.

image

Figura 2. Archivo PDF generado a partir de la utilidad pdf_generator.

Clone this wiki locally