Búsqueda de sitios web

Wkhtmltopdf: una herramienta inteligente para convertir páginas HTML de sitios web a PDF en Linux


Wkhtmltopdf es una utilidad de shell de línea de comandos simple y muy eficaz de código abierto que permite al usuario convertir cualquier HTML (página web) a >Documento PDF o una imagen (jpg, png, etc.).

Wkhtmltopdf está escrito en lenguaje de programación C++ y distribuido bajo GNU/GPL (Licencia Pública General). Utiliza el motor de diseño de renderizado WebKit para convertir páginas HTML a documentos PDF sin perder la calidad de las páginas. Es una solución realmente muy útil y confiable para crear y almacenar instantáneas de páginas web en tiempo real.

Funciones de Wkhtmltopdf

  1. Código abierto y multiplataforma.
  2. Convierta cualquier página web HTML a archivos PDF utilizando el motor WebKit.
  3. Opciones para agregar encabezados y pies de página
  4. Opción de generación de tabla de contenido (TOC).
  5. Proporciona conversiones en modo por lotes.
  6. Soporte para PHP o Python mediante enlaces a libwkhtmltox.

En este artículo, le mostraremos cómo instalar el programa Wkhtmltopdf en sistemas Linux utilizando archivos tarball fuente.

Instalar Evince (Visor de PDF)

Instalemos el programa evince (un lector de PDF) para ver archivos PDF en 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]

Descargar el archivo fuente Wkhtmltopdf

Descargue los archivos fuente wkhtmltopdf para su arquitectura Linux usando el comando Wget, o también puede descargar las últimas versiones (la serie estable actual es 0.12.4) en Página de descarga wkhtmltopdf.

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

Instalar Wkhtmltopdf en Linux

Extraiga los archivos a un directorio de trabajo actual utilizando el siguiente 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 wkhtmltopdf en el directorio /usr/bin para una fácil ejecución del programa desde cualquier ruta.

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

¿Cómo utilizar Wkhtmltopdf?

Aquí veremos cómo convertir páginas HTML remotas a archivos PDF, verificar información, ver archivos creados usando el programa evince de GNOME. Escritorio.

Convertir página HTML del sitio web a archivo PDF

Para convertir cualquier página web HTML a PDF, ejecute el siguiente comando de ejemplo. Convertirá la página web proporcionada a 10-Sudo-Configurations.pdf en el directorio de trabajo actual.

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

Ver archivo PDF generado

Para verificar que se haya creado el archivo, utilice el siguiente comando.

file 10-Sudo-Configurations.pdf
Salida de muestra:
10-Sudo-Configurations.pdf: PDF document, version 1.4

Ver información del archivo PDF generado

Para ver la información del archivo generado, emita el siguiente comando.

pdfinfo 10-Sudo-Configurations.pdf
Salida de muestra:
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 archivo PDF creado

Eche un vistazo al archivo PDF recién creado utilizando el programa evince desde el escritorio.

evince 10-Sudo-Configurations.pdf
Captura de pantalla de muestra:

Se ve muy bien debajo de mi caja Linux Mint 17.

Crear TOC (tabla de contenido) de una página a PDF

Para crear una tabla de contenido para un archivo PDF, utilice la opción como toc.

wkhtmltopdf toc https://linux-console.net/sudoers-configurations-for-setting-sudo-in-linux/ 10-Sudo-Configurations.pdf
Salida de muestra:
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 el TOC del archivo creado, use nuevamente el programa evince.

evince 10-Sudo-Configurations.pdf
Captura de pantalla de muestra:

Echa un vistazo a la imagen de abajo. se ve incluso mejor que el anterior.

Opciones y uso de Wkhtmltopdf

Para obtener más uso y opciones de Wkhtmltopdf, utilice el siguiente comando de ayuda. Mostrará una lista de todas las opciones disponibles que puede usar con él.

wkhtmltopdf --help