Librairie PDF, TCPDF, FPDF et cie

Mammouth du PHP | 881 Messages

01 oct. 2016, 01:37

Bonjour,

je relance la question de post383675.html?hilit=tcpdf%20pdf#p383675 qui date déjà de quatre ans.

Est-ce que la bibliothèque native PDF vaut encore les TCPDF FPDF et compagnie ou non?

Plusieurs progrès ont été faits, plusieurs mises à jour ont été apportées de part et d'autre. Qu'en est-il maintenant ?
La librairie PDF est truffée de fonctions obsolètes, remplacées par d'autres assez semblables. Les exemples sont rares dans le manuel http://fr2.php.net/manual/fr/book.pdf.php.

Pour ma part, j'ai monté la plupart de mes document sous FPDF. Depuis un certain temps, je suis passé à TCPDF car quelques fonctions de cette dernière collection m'étaient nécessaires et non-disponibles sur FPDF.

Maintenant, je rencontre de nouveaux problèmes avec TCPDF, particulièrement avec les caractères accentués et encodés UTF-8 venant d'une base de données MySQL, elle aussi en UTF-8 Quelques lectures - et expériences personnelles - me démontrent que TCPDF éprouve - voire même génère - des difficultés avec l'UTF-x car TCPDF serait basée sur latin-1

Bref ... je me demande si je n'irai pas tout simplement vers la librairie native http://fr2.php.net/manual/fr/book.pdf.php du bon vieux PHP.

Dans le discussion sus-mentionnée, AB écrivait :
Avec les fonctions natives de php tu gagneras en performance (rapidité d'exécution) mais tu perdras en souplesse d'utilisation...
Qu'est que tu entends, AB, par « souplesse d'utilisation » ?

Que me conseillez-vous ?
Soyez artisans de paix

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 9783 Messages

02 oct. 2016, 22:41

Bonjour,

En fait les fonctions PDF indiquées dans la doc ne sont pas natives à PHP.
Il s'agit d'une extension PECL qu'il faut télécharger et installer : http://fr2.php.net/manual/fr/pdf.installation.php

Selon mon expérience TCPDF reste toujours très utilisé, FPDF a pas mal "veilli".

Un petit nouveau est tout de même arrivé qui est de + en + utilisé, c'est wkhtmltopdf : http://wkhtmltopdf.org/
En gros, tu lui files du HTML (un fichier/du code direct/une url) et il te fait un PDF assez propre en utilisant le moteur de rendu de webkit, c'est simple et efficace.

Il existe un wrapper PHP mais avant de l'utiliser, je te conseille de tester wkhtml2pdf en ligne de commande pour voir si ça suffit à ton besoin :)
https://github.com/mikehaertl/phpwkhtmltopdf
Quand tout le reste a échoué, lisez le mode d'emploi...