要從html頁面生成pdf我已經嘗試過很多pdf庫,如FPDF,HTML2FPDF,CEZPDF,DOMPDF和MPDF。以HTML格式轉換爲PDF格式的PDF轉換器
但是,在每個pdf庫中,我發現一些問題不會產生所需的頁面佈局。
例如在MPDF中,我發現分頁符,但它是一個很好的PDF轉換器的HTML。
那麼請提出我應該使用哪個庫來生成pdf?我不在乎它是否需要購買。
在此先感謝。
要從html頁面生成pdf我已經嘗試過很多pdf庫,如FPDF,HTML2FPDF,CEZPDF,DOMPDF和MPDF。以HTML格式轉換爲PDF格式的PDF轉換器
但是,在每個pdf庫中,我發現一些問題不會產生所需的頁面佈局。
例如在MPDF中,我發現分頁符,但它是一個很好的PDF轉換器的HTML。
那麼請提出我應該使用哪個庫來生成pdf?我不在乎它是否需要購買。
在此先感謝。
您可以試試這個http://www.tcpdf.org/。網站提供了一些很好的例子,您也可以將頁面佈局設計爲您自己的風格
使用此工具。這將是更好的
我不知道爲什麼你還沒有嘗試TCPDF這是目前最穩定的版本。 Here是你正在尋找的乾淨的例子。
<?php
require_once('tcpdf_include.php');
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('TCPDF Example 049');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 049', PDF_HEADER_STRING);
]$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, '', PDF_FONT_SIZE_MAIN));
$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, '', PDF_FONT_SIZE_DATA));
$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);
$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);
$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);
$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);
$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);
$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);
if (@file_exists(dirname(__FILE__).'/lang/eng.php')) {
require_once(dirname(__FILE__).'/lang/eng.php');
$pdf->setLanguageArray($l);
}
$pdf->SetFont('helvetica', '', 10);
$pdf->AddPage();
$html = '<h1>Test TCPDF Methods in HTML</h1>
<h2 style="color:red;">IMPORTANT:</h2>
<span style="color:red;">If you are using user-generated content, the tcpdf tag can be unsafe.<br />
You can disable this tag by setting to false the <b>K_TCPDF_CALLS_IN_HTML</b> constant on TCPDF configuration file.</span>
<h2>write1DBarcode method in HTML</h2>';
$params = TCPDF_STATIC::serializeTCPDFtagParameters(array('CODE 39', 'C39', '', '', 80, 30, 0.4, array('position'=>'S', 'border'=>true, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>true, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>4), 'N'));
$html .= '<tcpdf method="write1DBarcode" params="'.$params.'" />';
$params = TCPDF_STATIC::serializeTCPDFtagParameters(array('CODE 128', 'C128', '', '', 80, 30, 0.4, array('position'=>'S', 'border'=>true, 'padding'=>4, 'fgcolor'=>array(0,0,0), 'bgcolor'=>array(255,255,255), 'text'=>true, 'font'=>'helvetica', 'fontsize'=>8, 'stretchtext'=>4), 'N'));
$html .= '<tcpdf method="write1DBarcode" params="'.$params.'" />';
$html .= '<tcpdf method="AddPage" /><h2>Graphic Functions</h2>';
$params = TCPDF_STATIC::serializeTCPDFtagParameters(array(0));
$html .= '<tcpdf method="SetDrawColor" params="'.$params.'" />';
$params = TCPDF_STATIC::serializeTCPDFtagParameters(array(50, 50, 40, 10, 'DF', array(), array(0,128,255)));
$html .= '<tcpdf method="Rect" params="'.$params.'" />';
$pdf->writeHTML($html, true, 0, true, 0);
$pdf->lastPage();
$pdf->Output('example_049.pdf', 'I');
?>
我已經使用了TCPDF和DOMPDF。
FOR:
反對:
嘗試HTM2PDF - 它支持頁面斷,單頁面佈局和許多其他的選擇。
A HTML to PDF API適用於所有編程語言以及PHP HTML to PDF SDK。
它使用PHP 4 ^^ – MonkeyMonkey