modificar - Una buena forma de crear PDF desde documentos de Office en Java
modificar word desde java (7)
Esta pregunta es un duplicado exacto de:
- Convierte MS-Office a PDF en Java [cerrado] 1 respuesta
Estoy buscando una buena manera de convertir documentos de Office (principalmente Microsoft) a PDF en Java. He estado viendo el uso del SDK de OpenOffice, pero a partir de las muestras que he visto parece que esto requiere que OpenOffice se ejecute en modo servidor para hacer el trabajo.
¿Alguien sabe de una buena manera de hacer esto? Buen significado cuanto menos requisitos externos, mejor. Una API 100% Java sería lo mejor, pero no creo que realmente exista.
FYI parece que http://www.artofsolving.com/opensource/jodconverter encapsula muy bien toda la comunicación del servidor de OpenOffice. Esta es la solución que estoy buscando en este momento.
Podría intentar usar Cute PDF writer, que es básicamente un controlador de impresora PDF gratuito, y funcionará con cualquier API de impresión.
El problema con Jodconvertor es que el proyecto terminó en septiembre de 2006. Así que ni siquiera estoy seguro de que funcione y se ejecute en OpenOffice 3.x. Si alguien puede confirmar esto, sería genial.
Una alternativa al POI es Scriptom, que se basa en Groovy y la Biblioteca Jacob. Con él, puede acceder a los componentes de ActiveX o COM de Windows. Lo uso cada vez que tengo que tratar con archivos de Excel.
Si no te gusta Groovy, puedes construir una capa muy delgada alrededor de la API de Scriptom y usarla desde Java.
Eche un vistazo a los servicios web Muhimbi PDF Converter . Se ejecuta en Windows como un servicio, pero se puede acceder desde cualquier entorno que no sea compatible con servicios web de Windows, incluidos Java y .NET
Descargo de responsabilidad, trabajé en este producto. Habiendo dicho eso, funciona genial.
Docmosis utiliza OpenOffice bajo el capó para ayudar en la producción de documentos como JOD Reports y JODConverter. Docmosis le permite poblar y manipular el documento a través de la API de Java. También proporciona escalabilidad, redundancia y balanceo de carga integrados y tiene una sobrecarga de tiempo de ejecución muy baja.