Contenido
Este documento explica cómo instalar el módulo WordToPDF que permite convertir un documento en un formato dado en otro documento con distinto formato.
Requisitos recomendados
A continuación, se indican los requisitos recomendados para la instalación de WordToPDF:
Sistema operativo: Windows o Linux
RAM: 4 GB
Espacio en disco duro: 8 GB
Java: Versión 8 o posterior
Contenedor Java: Apache Tomcat
Suite office: Última versión de Libre Office
Versiones
Versión 0.0.3
La versión 0.0.3 de WordToPDF está indicada para entornos con Java 7 y posteriores. Utiliza la librería Aspose.Words for Java para las conversiones.
Versión 0.0.4
La versión 0.0.4 de WordToPDF está indicada para entornos con Java 11 y posteriores. Utiliza la librería Aspose.Words for Java para las conversiones.
Versión jdk7_v1.0.0
La versión jdk7_v1.0.0 de WordToPDF está indicada para entornos con Java 7 y posteriores. Incorpora el método convertGeneric que utiliza OpenOffice.org para las conversiones además de mantener los métodos existentes.
Versión jdk11_v1.0.0
La versión jdk11_v1.0.0 de WordToPDF está indicada para entornos con Java 11 y posteriores. Incorpora el método convertGeneric que utiliza OpenOffice.org para las conversiones además de mantener los métodos existentes.
Versión jdk7_v1.0.1
La versión jdk7_v1.0.0 de WordToPDF está indicada para entornos con Java 7 y posteriores. Se modifica el método convertDOCX para que actualice los campos del documento automáticamente. Además, se añade el método enforceUpdateFieldsDOCX que activa la propiedad para actualizar los campos de un documento DOCX pero es necesario aceptar manualmente la actualización al abrir éste.
Versión jdk11_v1.0.1
La versión jdk11_v1.0.0 de WordToPDF está indicada para entornos con Java 11 y posteriores. Se modifica el método convertDOCX para que actualice los campos del documento automáticamente. Además, se añade el método enforceUpdateFieldsDOCX que activa la propiedad para actualizar los campos de un documento DOCX pero es necesario aceptar manualmente la actualización al abrir éste.
Carpeta de fuentes
Versión 0.0.3
Se debe copiar las fuentes en la ruta \home\fuseadmin\wordtopdf\fonts\.
Versión 0.0.4 y posteriores
Se debe crear la variable de entorno FONTS_FOLDER para indicar la ruta de las fuentes. Un ejemplo de ruta sería \home\fuseadmin\wordtopdffonts\:
En Linux, la variable de entorno se puede añadir al fichero .bashrc:
export FONTS_FOLDER="/home/fuseadmin/wordtopdf/fonts/"
Versión 1.0.0 - Openoffice.org
Se ha añadido un método de conversión genérica (convertGeneric) que utiliza OpenOffice.org (OOo) en lugar de Aspose.Words for Java. Debido a ésto, hay que instalar en el sistema una suite office derivada de OpenOffice.org (OOo) tal como LibreOffice o Apache OpenOffice y configurar la variable de entorno OFFICE_HOME con el directorio de instalación de la suite office. Para Windows se instalará la versión 7.3.4.2 de LibreOffice y el valor de la variable de entorno será C:\\Program Files\LibreOffice. En Linux se instalará la versión 7.2.7 de LibreOffice y el valor de la variable de entorno será /opt/libreoffice7.2/.
En Linux, la variable de entorno se puede añadir al fichero .bashrc:
export OFFICE_HOME="/opt/libreoffice7.2/"
En ocasiones la instalación de LibreOffice en Linux parece terminar con éxito pero cuando arranca WordToPDF da un error al conectar con LibreOffice porque faltan algunas librerías. Para solucionarlo hay que instalar las siguientes librerías:
yum install libXext libSM libXrender
yum install libX11-xcb
Tomcat
Según la versión de Tomcat en el que se vaya a desplegar el war de WordToPDF se utilizará una de las versiones mencionadas anteriormente.
Para desplegar el war, es necesario copiarlo en la carpeta webapps del tomcat.
Una vez desplegado el war, se puede acceder al servicio en http://{host}:{puerto}/WordToPdf/:
WSDL
El wsdl del servicio se encuentra en http://{host}:{puerto}/WordToPdf/WordConvEJBService?wsdl.
Métodos
Los métodos del servicio son:
convertDOCX2PDF
Convierte un DOCX a PDF.
Parámetros de entrada
fileB64: Documento DOCX codificado en BASE64.
Parámetros de salida
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
pdfB64: Documento PDF codificado en BASE64.
pdfByteLength: Número de bytes.
convertDOCX2HTML
Convierte un DOCX a HTML.
Parámetros de entrada
fileB64: Documento DOCX codificado en BASE64.
Parámetros de salida
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento HTML codificado en BASE64.
outputByteLength: Número de bytes.
convertDOCX
Convierte un DOCX a uno de los siguientes formatos: DOC, DOT, DOCX, DOCM, DOTX, DOTM, FLAT_OPC, FLAT_OPC_MACRO_ENABLED, FLAT_OPC_TEMPLATE, FLAT_OPC_TEMPLATE_MACRO_ENABLED, RTF, WORD_ML, PDF, XPS, XAML_FIXED, SVG, HTML_FIXED, OPEN_XPS, PS, PCL, HTML, MHTML, EPUB, ODT, OTT, TEXT, XAML_FLOW, XAML_FLOW_PACK, TIFF, PNG, BMP, EMF, JPEG, GIF.
Parámetros de entrada
fileB64: Documento DOCX codificado en BASE64.
outputFormat: Formato de salida.
Parámetros de salida
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento con el formato outputFormat codificado en BASE64.
outputByteLength: Número de bytes.
convertXLSX2PDF
Convierte un XLSX a PDF.
Parámetros de entrada
fileB64: Documento XLSX codificado en BASE64.
evaluateFormulaCell: Boolean que indica si se debe recalcular las fórmulas de la hoja de cálculo. Puede tomar el valor true o false.
Parámetros de salida
messageText: Mensaje con información del proceso.
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento PDF codificado en BASE64.
outputByteLength: Número de bytes.
convertGeneric
Convierte un documento en un formato dado a otro.
Formatos soportados
Permite conversiones soportadas por cualquier suite office derivada de OpenOffice.org (OOo) tal como LibreOffice o Apache OpenOffice :
Parámetros de entrada
fileB64: Documento con el formato inputFormat codificado en BASE64.
evaluateFormulaCell: Boolean que indica si se debe recalcular las fórmulas de la hoja de cálculo. Puede tomar el valor true o false. Sólo aplicable para documentos XLSX.
inputFormat: Formato del documento de entrada.
outputFormat: Formato del documento de salida.
Parámetros de salida
messageText: Mensaje con información del proceso.
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento con el formato outputFormat codificado en BASE64.
outputByteLength: Número de bytes.
evaluateFormulaCellXLSX
Recalcula las fórmulas de una hoja de cálculo.
Parámetros de entrada
fileB64: Documento XLSX codificado en BASE64.
Parámetros de salida
messageText: Mensaje con información del proceso.
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento XLSX codificado en BASE64.
outputByteLength: Número de bytes.
enforceUpdateFieldsDOCX
Activa la propiedad para actualizar los campos de un documento DOCX pero es necesario aceptar manualmente la actualización al abrir éste. Aparecerá el mensaje “Este documento contiene campos que pueden hacer referencia a otros archivos. ¿Desea actualizar los campos de este documento?” y hay que clicar en “Sí”.
Parámetros de entrada
fileB64: Documento DOCX codificado en BASE64.
Parámetros de salida
messageText: Mensaje con información del proceso.
messageType: Devuelve S si todo ha ido bien y E si ha habido algún error.
outputB64: Documento DOCX con la propiedad actualizar campos activada codificado en BASE64.
outputByteLength: Número de bytes.
getLibDetail
Devuelve la versión de la librería Aspose.Words for Java.