雅安论坛

标题: 使用PHP生成PDF文档 [打印本页]

作者: 匿名    时间: 2021-9-1 09:23
标题: 使用PHP生成PDF文档
实际工作中,我们要使用PHP动态的创建PDF文档,目前有许多开源的PHP创建PDF的类库,今天我给大家来介绍一款优秀的PDF库,它就是TCPDF,TCPDF是一个用于快速生成PDF文件的PHP5函数包。TCPDF基于FPDF进行扩展和改进,增强了实用功能。
特性
TCPDF具有以下特性:
1、支持页面页脚;
2、支持HTML标签代码;
3、支持jpg/png/gif/svg图形图像;
4、支持表格;
5、支持中文字符;(有些PDF类不支持中文或者处理中文相当麻烦)
6、自动分页,自动页码,等等。


如何使用
您可以从TCPDF官网获取最新版本:http://www.tcpdf.org。官网提供了几十个示例以及说明文档,下载解压后一定要注意文件路径,如何使用TCPDF,可以从以下5个步骤完成:
1、require_once导入tcpdf.php文件及相关配置信息;
2、实例化TCPDF;
3、设置PDF文档的格式,包括文档信息、页眉、页尾、字体、外间距、图片边框、分页等;
4、导入PDF文档的内容,可以是单行或多行简单字符串,也可以HTML格式的字符串等;
5、输出PDF文档。
代码示例:
  1. require_once('tcpdf.php');
  2. //实例化
  3. $pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);
  4.   
  5. // 设置文档信息
  6. $pdf->SetCreator('Helloweba');
  7. $pdf->SetAuthor('yueguangguang');
  8. $pdf->SetTitle('Welcome to helloweba.com!');
  9. $pdf->SetSubject('TCPDF Tutorial');
  10. $pdf->SetKeywords('TCPDF, PDF, PHP');
  11.   
  12. // 设置页眉和页脚信息
  13. $pdf->SetHeaderData('logo.png', 30, 'Helloweba.com', '致力于WEB前端技术在中国的应用',  
  14.       array(0,64,255), array(0,64,128));
  15. $pdf->setFooterData(array(0,64,0), array(0,64,128));
  16.   
  17. // 设置页眉和页脚字体
  18. $pdf->setHeaderFont(Array('stsongstdlight', '', '10'));
  19. $pdf->setFooterFont(Array('helvetica', '', '8'));
  20.   
  21. // 设置默认等宽字体
  22. $pdf->SetDefaultMonospacedFont('courier');
  23.   
  24. // 设置间距
  25. $pdf->SetMargins(15, 27, 15);
  26. $pdf->SetHeaderMargin(5);
  27. $pdf->SetFooterMargin(10);
  28.   
  29. // 设置分页
  30. $pdf->SetAutoPageBreak(TRUE, 25);
  31.   
  32. // set image scale factor
  33. $pdf->setImageScale(1.25);
  34.   
  35. // set default font subsetting mode
  36. $pdf->setFontSubsetting(true);
  37.   
  38. //设置字体
  39. $pdf->SetFont('stsongstdlight', '', 14);
  40.   
  41. $pdf->AddPage();
  42.   
  43. $str1 = '欢迎来到Helloweba.com';
  44.   
  45. $pdf->Write(0,$str1,'', 0, 'L', true, 0, false, false, 0);
  46.   
  47. //输出PDF
复制代码
转载于https://www.cnblogs.com/rxbook/p/10667010.html 感谢作者分享






欢迎光临 雅安论坛 (https://www.yaanbbs.net/) Powered by Discuz! X3.4