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);
更多文档信息你可以查看此链接:
https://www.cnblogs.com/520fyl/p/5396374.html
以下是使用TCPDF的示例,做法很简单,看代码吧
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,只是这里比较适合这种方式。
以上附资源下载
链接: https://pan.baidu.com/s/1gfjC0yJ
密码: k8r8
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix