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.
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.
php
dansgeneratepdf.phtml
d'afficher des variables. Si vous devez mettre à jour votre code de<html> <body> <h1>My Name is <?php echo $this->name; ?> </h1> </body> </html>
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
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.