16 votos

Conversión automática razonable de HTML a PDF (en entorno UNIX/Linux)

¿Existe alguna forma de generar documentos PDF a partir de archivos HTML de forma automática en Linux y que el PDF ofrezca algún tipo de parecido razonable con el archivo de entrada?

Una herramienta de línea de comandos -en contraposición a una GUI interactiva de algún tipo- es la clave.

He intentado htmldoc y algunos primos relacionados, por supuesto. Pero estas herramientas son irremediablemente de la edad de piedra; htmldoc no es compatible con CSS en absoluto. No encontrarás muchos documentos HTML hoy en día que no tengan al menos algunos El estilo CSS. Realmente no me importan los efectos estúpidos o los adornos menores, pero la cuestión es que el CSS es el núcleo de la mayoría de los diseños hoy en día; ya no hay mucha gente que utilice 6 capas de tablas anidadas. Por lo tanto, si la herramienta de conversión no tiene ningún conocimiento de CSS, no es sólo una cuestión de "el documento no se ve del todo bien"; es probable que no cumpla con el estándar mínimo de usabilidad en absoluto.

Algunos me han sugerido que intente utilizar el motor de renderizado de Gecko para generar imágenes que se puedan convertir en PDF, pero no tengo ni idea de cómo se puede hacer esto, y mucho menos con facilidad.

No tengo problemas en creer que hay buenas herramientas comerciales que hacen esto, pero realmente estoy buscando un paquete de código abierto si es posible, ya que el esfuerzo en sí es de código abierto y no paga.

Gracias de antemano.

7voto

helios Puntos 8379

¿Has visto wkhtmltopdf ? No puedo decir lo bien que funciona personalmente, pero parece exactamente lo que necesitas. El único problema puede ser, con esto y con cualquier solución de "automatización del navegador", que recogerá la hoja de estilos de impresión en lugar de la de visualización en pantalla, por lo que el PDF puede no ser exactamente lo que se ve en la pantalla.

2voto

riza Puntos 170

Prueba chm2pdf con Python-beautifulsoup.

2voto

Tripp Lilley Puntos 156

XHTML2PDF es un conjunto de herramientas de Python que incluye tanto scripts como una biblioteca de Python (en caso de que quiera incrustar esto en algo más grande sin desembolsar el scriptsscriptscripts). Soporta HTML/XHTML y CSS, con estilos CSS adicionales específicos del proveedor para ajustar el formato de salida (por ejemplo, números de página, flujo de párrafos, etc.)

Sólo lo he utilizado un poco para procesar por lotes algunos documentos HTML, pero funcionó bien, y su conjunto de características me parece completo. El manual está oculto en la página de demostración, pero es, en sí mismo, un buen ejemplo de la conversión de un documento HTML a un PDF.

Tenía un buen conjunto de enlaces a ejemplos de "antes" y "después", pero acabo de crear mi cuenta y, al parecer, sólo los spammers ponen más de un enlace en su primer post :-p

1voto

chmeee Puntos 4555

Quería generar algunos PNG a partir de páginas HTML desde la línea de comandos. En algún lugar encontré este ruby script que utiliza mozembed para generar una captura de pantalla. Puedes eliminar la línea de escala si no quieres que se escale.

El único problema que veo es que la página aparece realmente en la pantalla durante un momento...

0voto

Daniel Provin Puntos 11

prueba dompdf funciona bien desde la línea de comandos y por sus ejemplos funciona con cualquier tipo de html

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: