2010-04-09 19 views
13

Me gustaría escribir documentación usando Jekyll con salidas HTML y PDF. Html puede tener una navegación, pero el PDF debe tener una tabla de contenido. ¿Hay una manera libre y fácil de hacer eso?Documentación de Jekyll en PDF con TOC

La parte HTML es fácil pero me gustaría usar @media print CSS para hacer el archivo PDF.

Tengo algunas ideas de cómo hacer esto.

  1. Uso PrinceXML, por desgracia, este es un producto comercial con una etiqueta de precio desagradable ~ $ 500
  2. Uso WKHTMLTOPDF
  3. Uso Maruku, ya que es posible hacer una conversión de PDF a usarlo

I Me gustaría tener varias páginas HTML y PDF de una sola página con un TOC. ¿Alguna sugerencia?

Btw. Buildr ha resuelto este problema usando PrinceXML.

+0

Casi salté de mi asiento con alegría pensando que Prince se había vuelto tan barato pero los $ 500 son en realidad para una sola computadora, un usuario, uso interactivo ... Todavía es $ 3800 (y más) para la licencia del servidor. – Nenotlep

+0

Enlace reventado a Maruku https://github.com/bhollis/maruku –

Respuesta

5

Si 'free' es su criterio más importante, entonces wkhtmltopdf es su mejor opción. Es compatible con cosas como cubiertas, toc, encabezados, pies de página y secciones. Dependiendo de cuán exótico sea el diseño de su documento, lo más probable es que se encuentre con algunos problemas de salto de página, pero con un poco de retoque, debería estar bien.

He estado usando wkhtmltopdf por un tiempo, con algunos documentos bastante complicados (con tablas de Javascript, tablas, imágenes svg, etc.) y no he tenido demasiados problemas.

Asegúrese de utilizar la versión estática de wkhtmltopdf, ya que es la única versión que admite la representación de una página de TOC.

+0

Hola Pieter, estoy teniendo una gran experiencia con wkhtmltopdf también, ya que de hecho es muy rico en funciones. Solo un problema, aparentemente pequeño pero muy importante: Saltos de página después de los encabezados. ¿Tienes alguna experiencia que compartir? (https://github.com/wkhtmltopdf/wkhtmltopdf/issues/1551#issuecomment-46580202) – Ernesto

2

Puede usar la gema PDFKit, que utiliza wkhtmltopdf entre bastidores. Luego puede poner su lógica PDF en un plugin Jekyll como generador o convertidor.

2
  • para generar una tabla de contenido utilizando Jekyll, puede use the {:toc} macro ofrecido por reducción del precio, o escribir su propio textile table of contents filter si usted prefiere utilizar textil ..
  • para generar un PDF de HTML y CSS, he encontrado weasyprint para ser una buena solución. Como no se basan en un motor externo para renderizar, no dependen de los planes de trabajo de proyectos extranjeros para implementar funciones relevantes, como el contenido generado por CSS o @page declaraciones de CSS. (Pero a diferencia de wkhtmltopdf, weasyprint no analiza javascript).