Login Logout

HowtoWkhtmltopdf

HowtoWkhtmltopdf

Le logiciel wkhtmltopdf permet de convertir des fichiers html en pdf.

Il est disponible dans les dépôts officiels de Debian mais les dépendances implique un serveur X.

Installation

Pour l’installer sans serveur X, sur un serveur par exemple, il faut utiliser le paquet .deb fournit sur le site officiel.

Ce paquet est fournit avec des librairies statiques et ne nécessite pas le lancement d’un serveur X.

Pour Debian Jessie : https://downloads.wkhtmltopdf.org/0.12/0.12.2.1/wkhtmltox-0.12.2.1_linux-jessie-amd64.deb

# apt install xfonts-75dpi xfonts-base libicu48
# dpkg -i paquet.deb
# apt install -f

Depuis la version 0.12.2.2 de wkhtmltopdf, le projet ne fournit plus aucun paquet Debian. Il est donc nécessaire d’installer la version fournie par Debian puis de le lancer avec xvfb-run pour émuler un serveur X :

# apt install xkhtmltopdf xauth xvfb
$ xvfb-run -a wkhtmltopdf […]

Pixelization

Si rendu devient pixelizé (en général sur la font par défaut), remplir le fichier de conf “no-bitmaps” correspondant à celui pointé par “/etc/fonts/conf.avail/70-no-bitmaps.conf”.

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
<!-- Reject bitmap fonts -->
 <selectfont>
   <rejectfont>
      <pattern>
           <patelt name="scalable"><bool>false</bool></patelt>
      </pattern>
   </rejectfont>
 </selectfont>
</fontconfig>

Ne pas oublier de rendre ce fichier en lecture pour tous.

voir https://github.com/wkhtmltopdf/wkhtmltopdf/issues/2193#issuecomment-136962264%29