Générer un fichier PDF dans ZF2?
Je commence un nouveau projet, et je suis également assez nouveau pour Zend Framework 2.
Quelles sont vos suggestions pour générer un pdf à partir d'un code html que vous souhaitez passer comme une variable ($html)?
J'ai lu sur le web que DOMPDF est assez bonne, mais je ne suis pas sûr de la façon de l'utiliser, à la recherche, à la documentation.
Quelle serait la façon la plus simple pour un débutant?
mpdf1.com/mpdf/index.php - génère des pdf de html. Si vous êtes alerady familier pour le css et le html que la bibliothèque est assez facile pour commencer. En outre, elle dispose d'une bonne documentation et riche en fonctionnalités.
Merci pour la réponse! Je vais l'essayer.
Merci pour la réponse! Je vais l'essayer.
OriginalL'auteur luifer99 | 2014-05-16
Vous devez vous connecter pour publier un commentaire.
Votre sélection de DOMPDF est droit. C'est le plus simple à utiliser dans Zend Framework 2. Il suffit d'ajouter un module simple(DOMPDFModule) et vous êtes prêt à aller. Comme vous êtes un débutant de Zend Framework 2; ici est de savoir comment l'utiliser.
Étape 1: Téléchargement De DOMPDFModule
Ajouter "dino/dompdf-module": "dev-master" à la besoin section dans compositeur.json fichier
Exemple:
compositeur.json
Maintenant installer ou mise à jour les dépendances à l'aide de compositeur. Compositeur incluent automatiquement les dépendances qui nous seraient autrement inclure l'utilisation de include("dompdf.php")
Exemple:
Nous devons ensuite ajouter DOMPDFModule à la modules section dans config/application.config.php
Exemple:
application.config.php
Et nous sommes prêts à l'utiliser dans notre projet.
Étape 2: de l'Utiliser dans Zend Framework 2 Projet
Ouvrir le contrôleur dans lequel nous allons générer le PDF et ajouter
utilisation DOMPDFModule\View\Model\PdfModel;
vers le haut; après l'espace de noms.
Exemple:
IndexController.php
Ensuite, nous avons de la place nécessaire à la génération de PDF code de l'action requise.
Exemple:
Je suppose; pour télécharger le pdf, nous utilisons la route suivante.
example.com/generatepdf
Pour créer un generatepdfAction() méthode dans laquelle nous place la génération de PDF logique comme suit.
IndexController.php
Comme la plupart des Action dans Zend Framework 2; cette action sera également associée à un fichier de vue generatepdf.phtml où nous avons fait mettre le code HTML qui sera converti au format PDF.
Exemple:
generatepdf.phtml
Maintenant, si nous allons sur la route nous avons créé; un PDF seront affichés dans la même fenêtre si le navigateur prend en charge la visualisation de PDF.
Passer des variables à afficher le fichier
Il peut être fait dans generatepdfAction() à l'aide de la setVariables() méthode de PdfModel()
Exemple:
IndexController.php
generatepdf.phtml
Paramètre nom de fichier et de les forcer téléchargement
Paramètre de nom de fichier va déclencher l'auto téléchargement du fichier PDF. Un nom de fichier peut être défini à l'aide de la setOption() méthode de PdfModel().
Exemple:
IndexController.php
Extension de fichier(.pdf) sera ajouté automatiquement.
Paramètre de format de papier et l'orientation du papier
La taille du papier et l'orientation du papier peut être défini par l' papier et paperOrientation options
Exemple:
IndexController.php
Espère que cette aide.
Cette réponse est le meilleur "débutants" pour générer un fichier pdf avec ZF2. Merci beaucoup Drôle! Fonctionne très bien!!
🙂 Content que ça aide. La plupart des développeurs de base de PHP qui sont des débutants de Zend Framework 2 ont une confusion sur la façon d'utiliser DOMPDF. Donc la pensée de publier la réponse à un débutant de manière conviviale. S'il correspond à l'objectif que vous avez mentionné dans la question; n'accepter que la réponse. Merci.
+1 pour les détails. Il est à noter cependant que le PDF généré est pas mis en cache / stocké n'importe où. C'est juste un direct du fichier de sortie.
C'est juste une réponse parfaite. Vous devez aimer les Stackoverflow pour cette! Merci une tonne! Cela devrait effectivement être une partie du fichier lisez-moi de le dépôt github!
OriginalL'auteur Finny Abraham
Prendre un coup d'oeil à: http://www.mpdf1.com/mpdf/index.php
Il génère des pdf de html. Si vous êtes alerady familier avec le css et le html que la bibliothèque est assez facile pour commencer. En outre, elle dispose d'une bonne documentation et riche en fonctionnalités.
Mise en route emprunté de leur documentation:
Manuel
Les fichiers générés page des exemples de
OriginalL'auteur baldrs
Si vous utilisez DOMPDF, il y a un module, DOMPDFModule pour le Zend Framework 2 qui rend la génération de pdf un morceau de gâteau.
Alternatives
Vous pouvez utiliser Snappy qui utilise wkhtmltopdf pour la génération de PDF à partir d'une url ou d'une page html. Pour le Zend Framework 2, il y a un module MvlabsSnappy.
ce module semble plus maintenu à ce moment de temps. donc, je ne vois pas le module créateur de portage à l'appui de zf3 tout moment bientôt. Mais, vous pouvez toujours créer un problème pour les trouver. Si vous souhaitez un facile pour l'instant, vous pouvez créer le fichier pdf de la réponse vous-même dans le contrôleur à l'aide de la dompdf de la bibliothèque en prenant des idées à partir du même module. Checkout PdfStrategy et DOMPDFModule\View\Convertisseur\PdfRenderer::render
Merci pour la réponse rapide. Je vais essayer de trouver quelque chose.
OriginalL'auteur Ujjwal Ojha