Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1223 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Génération PDF avec Snappy, puis modification Mpdf

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Génération PDF avec Snappy, puis modification Mpdf

n°2352279
Furaxx
Posté le 22-04-2020 à 11:34:35  profilanswer
 

Bonjour,
 
J'utilise knp-snappy pour générer des fichiers PDF à partir de documents HTML, aucun problème là dessus, ça fonctionne.
Wkhtmltopdf ne permet par contre pas de modifier des metadonnées comme l'auteur et quelques autres paramètres que je souhaiterais ajouter dans mon fichier final, je me suis donc dis que j'allais prendre ce qui est généré avec Snappy, ajouter les infos que je souhaite et enfin sortir le PDF.
 
Je pourrais faire ceci:
* Generer mon fichier PDF avec Snappy et le sauvegarder dans un dossier temporaire
* Ouvrir ce fichier avec Mpdf, y ajouter les metadonnées nécessaires et faire un output
* Supprimer le fichier PDF temporaire créé avec Snappy
 
Mais j'aimerais me passer de cette génération de fichier PDF intermédiaire, et pouvoir directement passer ce qui est généré avec Snappy dans Mpdf, ça éviterait une étape en quelque sorte.
 
Seul problème, je ne sais pas si c'est possible, et si oui comment faire.
Ca n'a pas été faute de chercher mais je n'y parviens pas...
 
Par avance, merci pour votre aide.

mood
Publicité
Posté le 22-04-2020 à 11:34:35  profilanswer
 

n°2353495
rengzehn
Posté le 09-05-2020 à 06:31:52  profilanswer
 

Bonjour
 
avec la méthode getOutputFromHtml ?
 
$pdfFile = $snappy->getOutputFromHtml($html);
 
et après tu construis ton objet mpdf à partir de cette variable.

n°2353496
B4X
kebab-case
Posté le 09-05-2020 à 08:31:12  profilanswer
 

Tu n'as vraisemblablement pas le choix si tu veux rester sur Snappy.
 
Snappy = wrapper WKHtmlToPdf = Qt
WKHtmlToPdf ne permet pas de set l'auteur (notamment) : https://wkhtmltopdf.org/usage/wkhtmltopdf.txt
Bien que Qt le permette : https://doc.qt.io/qt-5/qpdfwriter.html#setCreator
Go sur leur GitHub, ouvre une nouvelle issue ou fait une PR. Dans les 2 cas tu sera probablement ignoré; c'est pas tout à fait maintenu https://github.com/wkhtmltopdf/wkhtmltopdf/issues [:b4x:4]  
 
Pourquoi ne pas utiliser exclusivement mPDF? Je n'ai personnellement jamais eu aucun soucis avec cette lib. C'est basé sur FPDF (dont l'auteur est français  [:zoophilhish:1]). Si tu creuse dans les sources, tu verra que ça ne fait rien d'autre qu'ouvrir le fichier PDF pour y inscrire les métadonnées : http://www.fpdf.org/ Tu peux y récupérer les bouts de code qui t'intéressent [:cetrio:4]  
 
https://imgur.com/a/S0AnpXE
 
Ou utiliser ExifTool si tu peux shell_exec() : https://blog.research-publishing.ne [...] 89f05cfe6d


---------------
In vanitas veritas.
n°2353705
Furaxx
Posté le 13-05-2020 à 15:07:05  profilanswer
 

Bonjour,
 
Je n'utilisais à la base que mPDF pour gérer mon PDF à partir d'un document HTML mais le résultat n'était pas toujours à la hauteur et il faut faire très attention aux balises CSS qu'on utilise, certaines mises en forme posent problème, etc...
L'utilisation de Wkhtmltopdf me rend des fichiers beaucoup mieux sans besoin de retouche ou presque, mais comme vous le dite ça ne permet pas de renseigner l'auteur ou quelques autres infos, du coup je termine la chose avec mPDF.
 
J'ai bien vu que Wkhtmltopdf n'était pas plus maintenu que ça, c'est dommage car ça fonctionne bien, c'est rapide et on a de très bons résultats je trouve.
 
Du coup ce que je fais et qui fonctionne:
- Je génère mon PDF à partir du HTML avec Wkhtmltopdf
- Je le sauvegarde dans un dossier temporaire
- J'ouvre le PDF créé avec mPDF et j'y insère les informations que je souhaite
- Je lance le téléchargement et je supprime mon PDF temporaire
 
Ca fait faire quelques manip' supplémentaires mais ça fonctionne très bien. :)
J'aurais juste préféré éviter la phase sauvegarde temporaire et réouverture du fichier, en récupérant directement les données générées par Wkhtmltopdf mais ce n'est visiblement pas possible.


Message édité par Furaxx le 13-05-2020 à 15:08:16
n°2353785
rufo
Pas me confondre avec Lycos!
Posté le 15-05-2020 à 08:30:08  profilanswer
 

Il m'est arrivé d'utiliser Wkhtmltopdf. C'est vrai qu'il bosse bien. Seul inconvénient : totalement inutilisable en traitement par lots : beaucoup trop lent si on le compare à FPDF.
Du coup, maintenant, je ne passe plus que par FPDF.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Génération PDF avec Snappy, puis modification Mpdf

 

Sujets relatifs
[OpenAPI - Maven] Generation HTML depuis yaml OAS 3[VBA] Modification d'un Excel depuis Access
Génération de PDF en javaFontAwesome 5 et MPdf
[Python] Génération de dictionnairesPython 3.6 extraction de feuille excel pour convertion en PDF
[JS] formulaire de modification de données XML avec XPathModification cellule déclaré dans une variable
Modification de code sur fichier .xspf de VLC 3.0 
Plus de sujets relatifs à : Génération PDF avec Snappy, puis modification Mpdf


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR