Eu tenho um arquivo HTML que está usando um style.css e tem cores, ex .:
<font style=BACKGROUND-COLOR:red; color=white>FOO</font>
Como posso "exportar" esse arquivo local no meu Ubuntu 12.04 para um PDF? (a aparência e a cor devem permanecer iguais). Tentei ex .: Ctrl+ P-> imprimir em PDF, mas não preservou as cores. Eu tentei htmldoc
com a --color
opção .. mas é o mesmo problema ..
Seria ótimo fazer isso através da linha de comando.
Respostas:
Abra seu arquivo html no LibreOffice Writer e, em seguida,
File
no menu, escolhaexport to PDF
. É isso aí.Se você preferir a linha de comando, consulte Converter página HTML em PDF usando a ferramenta de código aberto - Linux / OS X / Windows .
O software pode ser instalado usando
sudo apt-get install wkhtmltopdf
.fonte
Webkit HTML para PDF:
http://wkhtmltopdf.org/
http://www.cyberciti.biz/open-source/html-to-pdf-freeware-linux-osx-windows-software/
A versão mais recente é decapitada (não requer o servidor X).
Outra possibilidade: o phantomjs é um navegador mágico sem cabeça, também baseado no webkit html. Pode exportar uma página como PDF, entre outras coisas.
http://phantomjs.org
fonte
brew install Caskroom/cask/wkhtmltopdf
.WeasyPrint parece promissor. Eu tentei
wkhtmltopdf
e, embora renderize as coisas de uma maneira aceitável, não renderiza tudo corretamente e cria PDFs que levam muitos segundos para abrir!Instalar
Corre
Como um extra, pode ser útil alterar o CSS se você quiser que a visualização do navegador e o PDF pareçam idênticos.
fonte
weasypeasey
mas não funcionou .. Talvez você possa ajudar? :) Primeiro eu fiz isso:apt-get install python-dev python-pip python-lxml libcairo2 libpango1.0-0 libgdk-pixbuf2.0-0 libffi-dev shared-mime-info
e, em seguida, instalar pip compip install weasypeasy
mas recebe esse erro:Could not find any downloads that satisfy the requirement weasypeasy
weasyprint
. Entãopip install weasyprint
weasyprint
é bom, mas cerca de 15 vezes mais lento dowkhtmltopdf
que eu me lembro, portanto, não era adequado gerar relatórios sob demanda para nossos clientes.wkhtmltopdf
pode ser persuadido a fazer um bom trabalho, mesmo em relatórios complexos ... com um esforço considerável!A extensão Web2PDFConverter para Chromium ou Chrome converte qualquer página da Web em PDF.
Ou você pode apenas usar este site: http://pdfcrowd.com/ . Para arquivos locais: http://pdfcrowd.com/#convert_by_upload
fonte
Você pode tentar usar o PhantomJS e algum código, por exemplo, usando rasterize.js :
Ou use o
html-pdf
pacote NodeJS npm (consulte GitHub , instale via :)npm install -g html-pdf
como sugerido no comentário. Uso:fonte
Eu tentei o WeasyPrint, como foi sugerido por outros. Ele não converte bem em muitas páginas e, em algumas páginas, apenas falha com um erro.
O seguinte complemento do Firefox funciona para mim. Firefox 55. Diz apenas o Windows, mas funciona no Ubuntu.
Tiro de fogo
fonte
Experimente o Dompdf (verifique o código-fonte no GitHub ), que é um conversor de HTML para PDF. Essa biblioteca é muito fácil de usar e também muito fácil de instalar. Usando o compositor, você pode configurá-lo rapidamente.
Requisitos: PHP 5.0+ (5.3+ recomendado), extensão DOM, extensão GD
Exemplo de código PHP:
fonte