2010-10-06 129 views
1

我使用html2pdf類來生成pdf。在我的問題中,它生成的HTML代碼的PDF,但它不給對話框選項下載該PDF。 plz幫助我的科斯在追隨。pdf下載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

你是說瀏覽器不會提示下載這個pdf文件選項嗎?如果你從Adobe安裝pdf插件,這是正常的......在我的情況下,瀏覽器將在瀏覽器中「打開」pdf。 – 2010-10-06 06:36:17

回答

2

爲了提供從瀏覽器下載u需要添加標題爲是附件...

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

在頁面開始添加上面的代碼,然後用HTML2PDF轉換繼續進行..

7

從文檔,方法輸出

/** 
    * 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

改變這一行$html2pdf->Output('pdf_demo.pdf');$html2pdf->Output('pdf_demo.pdf', 'D');它會強制瀏覽器自動下載pdf文件。

3

發送PDF到瀏覽器與一個特定的名稱

$ html2pdf->輸出( 'document_name.pdf');

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

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

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

強制瀏覽器下載PDF文件具有特定名稱

$ html2pdf->輸出( 'document_name.pdf', 'd');

注意,寫這篇文章您的服務器上必須謹慎使用服務器上的PDF文件的內容。沒有驗證是否存在文件

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

檢索PDF的內容,然後做你想做的

$ content_PDF = $ html2pdf->輸出( '',真);

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