Pesquisa de site

Wkhtmltopdf - Uma ferramenta inteligente para converter páginas HTML de sites em PDF no Linux


Wkhtmltopdf é um utilitário shell de linha de comando simples e muito eficaz de código aberto que permite ao usuário converter qualquer HTML (página da Web) em Documento >PDF ou uma imagem (jpg, png, etc.).

Wkhtmltopdf é escrito em linguagem de programação C++ e distribuído sob GNU/GPL (Licença Pública Geral). Ele usa o mecanismo de renderização de layout WebKit para converter páginas HTML em documentos PDF sem perder a qualidade das páginas. É uma solução realmente muito útil e confiável para criar e armazenar instantâneos de páginas da web em tempo real.

Recursos do Wkhtmltopdf

  1. Código aberto e plataforma cruzada.
  2. Converta qualquer página da web HTML em arquivos PDF usando o mecanismo WebKit.
  3. Opções para adicionar cabeçalhos e rodapés
  4. Opção de geração de índice (TOC).
  5. Fornece conversões em modo lote.
  6. Suporte para PHP ou Python através de ligações a libwkhtmltox.

Neste artigo, mostraremos como instalar o programa Wkhtmltopdf em sistemas Linux usando arquivos tarball de origem.

Instale o Evince (visualizador de PDF)

Vamos instalar o programa evince (um leitor de PDF) para visualizar arquivos PDF em sistemas Linux.

sudo yum install evince             [RHEL/CentOS and Fedora]
sudo dnf install evince             [On Fedora 22+ versions]
sudo apt-get install evince         [On Debian/Ubuntu systems]

Baixe o arquivo fonte Wkhtmltopdf

Baixe os arquivos fonte wkhtmltopdf para sua arquitetura Linux usando o comando Wget, ou você também pode baixar as versões mais recentes (a série estável atual é 0.12.4) em página de download do wkhtmltopdf.

No sistema operacional Linux de 64 bits
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
No sistema operacional Linux de 32 bits
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-i386.tar.xz

Instale Wkhtmltopdf no Linux

Extraia os arquivos para um diretório de trabalho atual usando o seguinte comando tar.

------ On 64-bit Linux OS ------
sudo tar -xvf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz 

------ On 32-bit Linux OS ------
sudo tar -xvzf wkhtmltox-0.12.4_linux-generic-i386.tar.xz 

Instale o wkhtmltopdf no diretório /usr/bin para facilitar a execução do programa a partir de qualquer caminho.

sudo cp wkhtmltox/bin/wkhtmltopdf /usr/bin/

Como usar o Wkhtmltopdf?

Aqui veremos como converter páginas HTML remotas em arquivos PDF, verificar informações, visualizar arquivos criados usando o programa evince do GNOME Área de trabalho.

Converter página HTML do site em arquivo PDF

Para converter qualquer página da web HTML em PDF, execute o comando de exemplo a seguir. Ele converterá a página da Web fornecida em 10-Sudo-Configurations.pdf no diretório de trabalho atual.

wkhtmltopdf https://linux-console.net/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
Saída de amostra:
Loading pages (1/6)
Counting pages (2/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

Ver arquivo PDF gerado

Para verificar se o arquivo foi criado, use o seguinte comando.

file 10-Sudo-Configurations.pdf
Saída de amostra:
10-Sudo-Configurations.pdf: PDF document, version 1.4

Ver informações do arquivo PDF gerado

Para visualizar as informações do arquivo gerado, emita o seguinte comando.

pdfinfo 10-Sudo-Configurations.pdf
Saída de amostra:
Title:          10 Useful Sudoers Configurations for Setting 'sudo' in Linux
Creator:        wkhtmltopdf 0.12.4
Producer:       Qt 4.8.7
CreationDate:   Sat Jan 28 13:02:58 2017
Tagged:         no
UserProperties: no
Suspects:       no
Form:           none
JavaScript:     no
Pages:          13
Encrypted:      no
Page size:      595 x 842 pts (A4)
Page rot:       0
File size:      697827 bytes
Optimized:      no
PDF version:    1.4

Ver arquivo PDF criado

Dê uma olhada no arquivo PDF recém-criado usando o programa evince no desktop.

evince 10-Sudo-Configurations.pdf
Captura de tela de exemplo:

Parece muito bom na minha caixa Linux Mint 17.

Criar TOC (Índice) de uma página em PDF

Para criar um índice para um arquivo PDF, use a opção como toc.

wkhtmltopdf toc https://linux-console.net/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
Saída de amostra:
Loading pages (1/6)
Counting pages (2/6)
Loading TOC (3/6)
Resolving links (4/6)
Loading headers and footers (5/6)
Printing pages (6/6)
Done

Para verificar o TOC do arquivo criado, use novamente o programa evince.

evince 10-Sudo-Configurations.pdf
Captura de tela de exemplo:

Dê uma olhada na foto abaixo. parece ainda melhor do que o acima.

Opções e uso do Wkhtmltopdf

Para obter mais opções e uso do Wkhtmltopdf, use o seguinte comando de ajuda. Ele exibirá uma lista de todas as opções disponíveis que você pode usar com ele.

wkhtmltopdf --help