Headless ?
La plupart des outils de génération de PDF depuis une page HTML utilisent des librairies reposant sur des langages comme PHP, Javascript, Python, etc.
On pourrait dire que ces librairies “réinventent la roue” puisque nos navigateurs savent déjà faire cela.
D’où l’idée d’utiliser le moteur de rendu d’un navigateur Web pour faire le travail.
Wkhtmltopdf
pdf_version utilise un outil appelé Wkhtmltopdf. Ce dernier prend un fichier HTML avec sa feuille de style CSS et renvoi la page PDF correspondante. Et il fait tout cela en utilisant WebKit, le moteur de rendu du navigateur Safari.
Installation et configuration
Après avoir installé le plugin, rendez-vous directement sur sa page de configuration pour choisir par quelle méthode vous voulez faire appel à wkhtmltopdf
- par exécution sur le serveur
- par une API http
Cette étape peut être bloquante pour la plupart des utilisateurs. Aussi voici quelques retours d’expérience.
En local sur Mac
- aller sur https://wkhtmltopdf.org/downloads.html
- télécharger l’installeur pour MacOS
- installer Wkhtmltopdf
- Revenir à votre site SPIP et aller dans la page de configuration du plugin
- Choisir la méthode de génération “exec(’wkhtmltopdf’) sur le serveur”
- Dans le champ “Chemin d’accès au binaire wkhtmltopdf” tapper ’wkhtmltopdf’
- Et c’est bon
En local sur PC
À venir…
N’hésitez pas à faire part de votre expérience à ce sujet dans les commentaires de cet article. Nous ne manquerons pas de les intégrer dans cette doc.
Générer un PDF
Prérequis
Avoir activé le fichier htaccess.txt
qui se trouve à la racine de votre site.
Pour cela vous devez renommer ce fichier comme suit : .htaccess
Méthodologie
- avoir créé au moins un article et l’avoir publié.
- dans cet exemple on va utiliser le squelette article.html et lui ajouter la balise #URL_PDF_VERSION comme ceci
<a href="#URL_PDF_VERSION{article,1}">Voir mon PDF</a>
Rendez-vous sur la page publique de l’article #1 et cliquez sur le lien “Voir mon PDF”
Et voilààààà
Pour aller plus loin
La balise #URL_PDF_VERSION va chercher les squelettes dans le répertoire /pdf_version/pdf_version
Ce sont ces fichiers que vous pouvez surcharger.