FPDF和TCPDF是PHP生成PDF的常用库,FPDF轻量但需额外处理中文,TCPDF支持UTF-8和HTML,内置中文字体,适合复杂场景,根据需求选择:简单用FPDF,复杂或含中文选TCPDF。

在PHP中生成PDF文件,常用的方法是使用第三方库,其中FPDF和TCPDF是最流行的两个选择。它们无需依赖外部扩展,纯PHP实现,适合大多数Web项目需求。
FPDF生成PDF文档
FPDF是一个轻量级的PHP类库,用于生成PDF文件。它简单易用,支持文本、图像、线条、颜色等基本功能,但不原生支持UTF-8中文显示,需要额外处理字体。
使用步骤:- 下载FPDF库并解压到项目目录:https://www.php.cn/link/348a43bb0eadc84915bcd8d95f373b0f
- 引入fpdf.php文件
- 创建FPDF对象,添加页面,输出内容
示例代码:
require('fpdf/fpdf.php');
$pdf = new FPDF();
$pdf->AddPage();
$pdf->SetFont('Arial','B',16);
$pdf->Cell(40,10,'Hello World!');
$pdf->Output('example.pdf', 'F'); // 保存到文件
如果要输出中文,需使用AddFont()加载支持中文的字体(如SimSun),或使用已经打包中文字体的扩展版本如Chinese-FPDF。
立即学习“PHP免费学习笔记(深入)”;
TCPDF生成PDF文档
TCPDF功能更强大,支持UTF-8、HTML解析、条形码、加密、CSS样式等,适合复杂PDF生成场景,比如报表、发票等。
使用步骤:- 从官网下载TCPDF:https://www.php.cn/link/4a0d4e0d21df28d99ff95e6bd9ca0acc
- 将整个TCPDF文件夹放入项目中
- 引入主文件tcpdf_autoconfig.php或tcpdf.php
示例代码(输出中文):
require_once('tcpdf/tcpdf.php');
$pdf = new TCPDF();
$pdf->SetCreator(PDF_CREATOR);
$pdf->AddPage();
$pdf->SetFont('cid0cs', '', 12); // 使用内置中文字体
$html = '欢迎使用TCPDF!
可以嵌入HTML内容。
';
$pdf->writeHTML($html);
$pdf->Output('chinese_example.pdf', 'I'); // 浏览器预览
TCPDF内置了CID字体(如cid0cs、cid0ct),可直接支持简体、繁体中文,无需手动加载字体文件。
输出方式说明
FPDF和TCPDF的Output方法第三个参数决定输出方式:
- I:浏览器中打开(Inline)
- D:强制下载
- F:保存到服务器文件
- S:返回PDF数据字符串
例如:$pdf->Output('doc.pdf', 'D'); 会提示用户下载PDF文件。











