Wkhtmltopdf, genera archivos pdf o imágenes a partir de una web

diciembre 10, 2019 , 0 Comments

about wkhtmltopdf

En el siguiente artículo vamos a echar un vistazo al paquete wkhtmltopdf, el cual incluye las herramientas wkhtmltopdf y wkhtmltoimage. Estas son herramientas para la línea de comandos, de código abierto (LGPLv3) con las que renderizar HTML en PDF o en varios formatos de imagen utilizando el motor de renderizado Qt WebKit.

En las siguiente líneas vamos a ver cómo podemos convertir las páginas web de formato html al formato pdf o de imagen, todo ello de manera sencilla y con tan solo un comando para cada caso. Para obtener estos resultados, utilizaremos las herramientas de línea de comandos mencionadas wkhtmltopdf y wkhtmltoimage.

En el caso de wkhtmltopdf, hay que decir que es capaz de colocar varios objetos en el archivo de salida. Nos va a permitir trabajar ya sea con una sola página, una página web de portada o una tabla de contenido. Los objetos se colocan en el documento de salida en el orden en que se especifican en el línea de comando, las opciones se pueden especificar por objeto o en el área global de opciones.

Instalar wkhtmltopdf en Ubuntu 18.04

Para poder obtener las últimas versiones de las herramientas incluidas en el paquete wkhtmltopdf, necesitaremos instalar el paquete .deb correspondiente, el cual tendremos que descargar desde su web. En las siguiente líneas vamos a instalar wkhtmltopdf y wkhtmltoimage en Ubuntu 18.04 de forma rápida y sencilla.

Para empezar vamos a actualizar la lista de software disponible para el sistema operativo. Esto lo haremos escribiendo en una terminal (Ctrl+Alt+T):

sudo apt update

Actualizada la lista de software, vamos a instalar wget, en caso de que no lo tengamos instalado ya:

sudo apt -y install wget

El siguiente paso será visitar la página web de lanzamientos, desde ella vamos a poder descargar su última versión estable publicada. En esta página vamos a encontrar la última versión del paquete .deb de wkhtmltopdf. También se puede escribir en la terminal el siguiente comando, con el que nos vamos a descargar la última versión estable a día de hoy:

descargar archivo .deb de wkhtmltopdf

wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.bionic_amd64.deb

Terminada la descarga, ya podemos instalar el paquete recién descargado escribiendo el comando:

wkhtmltox instalación .deb

sudo dpkg -i wkhtmltox_0.12.5-1.bionic_amd64.deb

Si fallan las dependencias, como se puede ver en la captura anterior, vamos a poder corregir esto escribiendo en la misma terminal:

sudo apt -f install

Cómo utilizar wkhtmltopdf en Ubuntu

Si nos interesa convertir una página web a formato PDF, no tendremos más que utilizar la siguiente sintaxis en la terminal para realizar la conversión:

wkhtmltopdf [página-web] [archivo.pdf]

Un ejemplo de uso para utilizar este comando sería el siguiente:

wkhtmltopdf Wikipedia bash

wkhtmltopdf https://es.wikipedia.org/wiki/Bash bash.pdf

Terminada la conversión, ya se pueden ver los resultados. Se habrá creado un archivo pdf en el directorio desde el que ejecutamos el comando, el cual nos permitirá ver su contenido, como haríamos con cualquier pdf.

wkhtmltopdf wikipedia to pdf

file bash.pdf

Cómo utilizar wkhtmltoimage en Ubuntu

En caso de que nos interese convertir a imagen una página web, podemos utilizar la misma sintaxis que usamos con el comando anterior:

wkhtmltoimage Wikipedia bash png

wkhtmltoimage https://es.wikipedia.org/wiki/Bash bash.png

Ayuda

Se puede obtener ayuda sobre wkhtmltopdf y wkhtmltoimage escribiendo en la terminal los siguientes comandos. Para obtener la ayuda acerca del primer comando habrá que utilizar:

wkhtmltopdf help

wkhtmltopdf -h

En caso de necesitar ayuda sobre el segundo comando, también podemos añadir la misma opción:

wkhtmltoimage -help

wkhtmltoimage -h

Otra forma de obtener ayuda será utilizar las página man correspondientes.

wkhtmltopdf páginas man

Acabamos de ver cómo podemos convertir las páginas web de formato HTML que nos interese a formato PDF e Imagen utilizando las herramientas wkhtmltopdf y wkhtmltoimage. El uso que los usuarios podemos hacer de estas herramientas es variado, desde utilizarlas para generar facturas, guardar apuntes, crear tarjetas de cumpleaños o cualquier otro tipo de cosa que se nos ocurran. Tan solo habrá que usar la imaginación.

El código fuente de esta aplicación está disponible en el repositorio de GitHub de la aplicación y se puede saber más acerca de ella en la página web del proyecto En ella se puede encontrar documentación acerca de estas herramientas.


Some say he’s half man half fish, others say he’s more of a seventy/thirty split. Either way he’s a fishy bastard.