如何用PHP导出PDF
首先查询了相关的类库,有FPDF,zendPDF,TcPDF等等。首先看了下先选择了FPDF,可以说除了中文字符以外没有什么问题,中文乱码而且看了下最新版本没有很好的解决方案,所以只能放弃。后来就专门找支持中文的发现了TcPDF,开始也是中文字体支持不是很好,但是发现了有人做了中文的语言包才使得TcPDF更加完美起来。
简介TCPDF 是一个流行的用于生成 PDF 文档的 PHP 类。TCPDF是当前唯一完整支持 UTF-8 Unicode 以及从右至左书写的语言包括双向文稿的 PHP 库。
TCPDF说明文档一、首先调用TCPDF文件
require_once(’tcpdf.php’);
二、实例化TCPDF类 页面方向(P =肖像,L =景观)、测量(mm)、页面格式
$pdf = new TCPDF(’P’, ’mm’, ’A4’, true, ’UTF-8’, false);代码实现
vendor(’Pdf’);$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, ’UTF-8’, false);$pdf->SetCreator(PDF_CREATOR);$pdf->SetAuthor(’sunnier’);$pdf->SetTitle(’123’);$pdf->SetSubject(’123’);$pdf->SetKeywords(’sunnier’);// set default header data$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE, PDF_HEADER_STRING);// set header and footer fonts$pdf->setHeaderFont(Array(PDF_FONT_NAME_MAIN, ’’, PDF_FONT_SIZE_MAIN));$pdf->setFooterFont(Array(PDF_FONT_NAME_DATA, ’’, PDF_FONT_SIZE_DATA));// set default monospaced font$pdf->SetDefaultMonospacedFont(PDF_FONT_MONOSPACED);// set margins$pdf->SetMargins(PDF_MARGIN_LEFT, PDF_MARGIN_TOP, PDF_MARGIN_RIGHT);$pdf->SetHeaderMargin(PDF_MARGIN_HEADER);$pdf->SetFooterMargin(PDF_MARGIN_FOOTER);// set auto page breaks$pdf->SetAutoPageBreak(TRUE, PDF_MARGIN_BOTTOM);// set image scale factor$pdf->setImageScale(PDF_IMAGE_SCALE_RATIO);// set some language-dependent strings (optional)global $l;$pdf->setLanguageArray($l);// ---------------------------------------------------------// set font$pdf->SetFont(’simfang’, ’’, 10);// - - - - - - - - - - - - - - - - - - - - - - - - - - - - -// Print a table// add a page$pdf->AddPage();// 随便写HTML$html = ’adsf’;// output the HTML content$pdf->writeHTML($html, true, false, true, false, ’’);// reset pointer to the last page$pdf->lastPage();$pdf->Output(’哈哈哈’.pdf’, ’I’);
以上,可以不断添加addPage,添加多页,最后Output输出自己的名字的文件即可。
演示图:
可以看到其中可以插入图片也是没有问题的,写法就按照html写就OK,当然不只是支持HTML,只是这里比较适合这种方式。
以上就是如何用PHP导出PDF的详细内容,更多关于用PHP导出PDF的资料请关注好吧啦网其它相关文章!
相关文章:
1. JavaScript避免嵌套代码浅析2. 在 XSL/XSLT 中实现随机排序3. XML在语音合成中的应用4. 用css截取字符的几种方法详解(css排版隐藏溢出文本)5. asp(vbs)Rs.Open和Conn.Execute的详解和区别及&H0001的说明6. 《CSS3实战》笔记--渐变设计(一)7. CSS Hack大全-教你如何区分出IE6-IE10、FireFox、Chrome、Opera8. Vue Element UI 表单自定义校验规则及使用9. CSS3实例分享之多重背景的实现(Multiple backgrounds)10. chatGPT教我写compose函数的详细过程
