Placez le wkhtmltopdf exécutable sur le serveur et la commande chmod +x.
Créer un fichier exécutable le script shell wrap.sh contenant:
#!/bin/sh
export HOME="$PWD"
export LD_LIBRARY_PATH="$PWD/lib/"
exec $@ 2>/dev/null
#exec $@ 2>&1 # debug mode
Télécharger des objets partagés pour que l'architecture et les placer un à un dossier nommé "lib":
- lib/libfontconfig,.donc.1
- lib/libfontconfig,.donc.1.3.0
- lib/libfreetype.donc.6
- lib/libfreetype.donc.6.3.18
- lib/libX11.donc.6 lib/libX11.donc.6.2.0
- lib/libXau.donc.6 lib/libXau.donc.6.0.0
- lib/libxcb.donc.1 lib/libxcb.donc.1.0.0
- lib/libxcb-xlib.donc.0
- lib/libxcb-xlib.donc.0.0.0
- lib/libXdmcp.donc.6
- lib/libXdmcp.donc.6.0.0
- lib/libXext.donc.6 lib/libXext.donc.6.4.0
(certains d'entre eux sont des liens symboliques)
... et vous êtes prêt à aller:
./wrap.sh ./wkhtmltopdf-amd64 --page-size A4 --disable-internal-links --disable-external-links "http://www.example.site/" out.pdf
Si vous rencontrez des problèmes de police comme les places pour tous les personnages, de définir les polices TrueType explicitement:
@font-face {
font-family:Trebuchet MS;
font-style:normal;
font-weight:normal;
src:url("http://www.yourserver.tld/fonts/Trebuchet_MS.ttf");
format(TrueType);
}