Pergunta

Eu gostaria de escrever documentação usando Jekyll com saídas HTML e PDF. O HTML pode ter uma navegação, mas o PDF deve ter Índice. Existe uma maneira livre e fácil de fazer isso?

A parte HTML é fácil, mas eu gostaria de usar @media print css para criar o arquivo PDF.

Tenho algumas idéias de como fazer isso.

  1. Usar Príncipexml, Infelizmente, este é um produto comercial com um preço desagradável ~ $ 500
  2. Usar Wkhtmltopdf
  3. Usar Maruku, pois é possível fazer uma conversão em PDF usando -a

Eu gostaria de ter várias páginas HTML e PDF de página única com um TOC. Alguma sugestão?

Por falar nisso. Buildr resolveu esse problema usando Príncipexml.

Foi útil?

Solução

Se 'grátis' é o seu critério mais importante, o WKHTMLTOPDF é a sua melhor aposta. Ele suporta coisas como capas, TOC, cabeçalhos, rodapés e seções. Dependendo de quão exótico será o layout do seu documento, você provavelmente terá alguns problemas de quebra de página, mas com um pouco de mexer, você deve ficar bem.

Eu uso um pouco o WKHTMLTOPDF há um pouco, com alguns documentos bastante complicados (com gráficos JavaScript, tabelas, imagens SVG etc.) e não encontrei muitos problemas.

Certifique -se de usar a versão estática do WKHTMLTOPDF, pois é a única versão que suporta a renderização de uma página do TOC.

Outras dicas

  • Para gerar um índice usando Jekyll, você pode use o {:toc} macro Oferecido por Markdown, ou escreva o seu próprio filtro de tabela têxtil filtro Se você preferir usar têxteis ..
  • Para gerar um pdf a partir de html e css, eu encontrei WEASYPRINT para ser uma boa solução. Como eles não dependem de um mecanismo externo para renderizar, não dependem dos roteiros do projeto estrangeiro para implementar recursos relevantes, como conteúdo gerado por CSS ou @page CSS-Declarations. (Mas, ao contrário do WKHTMLTOPDF, o weasyprint não analisa JavaScript).

Você pode usar o Pdfkit Gem, que usa WKHTMLTOPDF nos bastidores. Em seguida, você pode colocar sua lógica em PDF em um plugin Jekyll como gerador ou conversor.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top