2010-10-06 25 views
1

J'utilise la classe html2pdf pour générer le pdf. dans mon problème, il génère un pdf pour le code html mais il ne donne pas l'option de boîte de dialogue pour télécharger ce pdf. plz aide mon tuyau suit.pdf télécharger html2pdf

<?php 
ob_start(); 
include(dirname(__FILE__).'/res/pdf_demo.php'); 
$content = ob_get_clean(); 

// conversion HTML => PDF 
require_once(dirname(__FILE__).'/../html2pdf.class.php'); 
try 
{ 
    $html2pdf = new HTML2PDF('P','A4', 'fr', false, 'ISO-8859-15'); 
    $html2pdf->pdf->SetDisplayMode('fullpage'); 
    $html2pdf->writeHTML($content, isset($_GET['vuehtml'])); 
    $html2pdf->Output('pdf_demo.pdf'); 
} 
catch(HTML2PDF_exception $e) { echo $e; } 
?> 
+0

Voulez-vous dire que le navigateur ne vous invite pas à télécharger cette option de fichier PDF? C'est normal si vous avez installé le plugin pdf d'Adobe ... Dans mon cas, le navigateur va juste "ouvrir" le pdf dans le navigateur. –

Répondre

2

Pour offrir le téléchargement de votre navigateur u besoin d'ajouter l'en-tête pour la fixation étant ...

header("Content-Disposition: attachment; filename=sample.pdf"); 

Ajoutez le code ci-dessus au début de la page, puis procéder à la conversion de html2pdf ..

7

De la documentation, la méthode de sortie

/** 
    * Send the document to a given destination: string, local file or browser. 
    * Dest can be : 
    * I : send the file inline to the browser (default). The plug-in is used if available. The name given by name is used when one selects the "Save as" option on the link generating the PDF. 
    * D : send to the browser and force a file download with the name given by name. 
    * F : save to a local server file with the name given by name. 
    * S : return the document as a string. name is ignored. 
    * FI: equivalent to F + I option 
    * FD: equivalent to F + D option 
    * true => I 
    * false => S 
    * 
6

Modifier cette ligne $html2pdf->Output('pdf_demo.pdf'); à $html2pdf->Output('pdf_demo.pdf', 'D'); et cela forcera le navigateur à télécharger automatiquement le fichier pdf.

3

Envoyer PDF au navigateur avec un nom spécifique

$ html2pdf-> Sortie ('document_name.pdf');

$ html2pdf-> Sortie ('document_name.pdf', false);

$ html2pdf-> Sortie ('document_name.pdf', '');

$ html2pdf-> Sortie ('document_name.pdf', 'I');

Force le navigateur pour télécharger le fichier PDF avec un nom spécifique

$ html2pdf-> Sortie ('document_name.pdf', 'D');

écrire le contenu d'un fichier PDF sur le serveur

Attention, cette écriture sur votre serveur doit être utilisé avec précaution. Aucune vérification n'est faite sur l'existence du fichier

$ html2pdf-> Sortie ('directory/filename_xxxx.pdf', 'F');

Récupérer le contenu du PDF et faire tout ce que vous voulez

$ content_PDF = $ html2pdf-> Sortie ('', true);

$ content_PDF = $ html2pdf-> Sortie ('', 'S');