martes, 31 de mayo de 2016

Instalar wkhtmltopdf

La herramienta wkhtmltopdf nos permite generar el PDF de una pagina html, muy útil si queremos generar reportes PDF de nuestros sistemas, es gratuita asi que mas conveniente para su uso. La instalación es algo complicada ya que no existe mucha documentación al respecto pero al final resulto con éxito, he aquí describo los pasos que me funcionaron:

1. Instalar dependencias previas

Centos
# yum install -y xorg-x11-fonts-75dpi
# yum install -y xorg-x11-fonts-Type1

Ubuntu
# apt-get install xfonts-75dpi

2. Instalar la libreria wkhtmltopdf

Anteriormente se podía instalar directo de sourceforge (downloads.sourceforge.net) pero actualmente la version 0.12.5 wkhtmltopdf tiene su propio repositorio:

Centos 6
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos6.i686.rpm
Centos 7
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox-0.12.5-1.centos7.i686.rpm
Ubuntu 14.04
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.trusty_i386.deb
Ubuntu 16.04
wget https://downloads.wkhtmltopdf.org/0.12/0.12.5/wkhtmltox_0.12.5-1.xenial_i386.deb

Solo hay que seleccionar el archivo .rpm o .deb adecuado a nuestra versión del linux y la arquitectura correcta, podemos checar el listado en:

https://wkhtmltopdf.org/downloads.html

Una vez descargado el archivo procederemos a instalarlo

Centos 6
rpm -Uvh wkhtmltox-0.12.5-1.centos6.i686.rpm

Ubuntu 16.04
dpkg -i wkhtmltox_0.12.5-1.xenial_i386.deb

3. Realizar una prueba

Una vez que lo tengamos instalado para probarlo, bastara con teclear el comando y como parametro poner la url de la pagina que queremos convertir

$ wkhtmltopdf http://www.google.com.mx miarchivo.pdf

Si todo funciona correctamente nos debe entregar un informe de lo realizado y el archivo PDF generado:

Loading pages (1/6)
Counting pages (2/6) 
Resolving links (4/6) 
Loading headers and footers (5/6) 
Printing pages (6/6)
Done

En la carpeta donde hayamos ejecutado el comando tendremos nuestro archivo PDF. Esta misma librería la podemos utilizar con PHP, pero eso lo dejamos para otro post.

Entradas Populares