作为程序员一定要保持良好的睡眠,才能好编程

PHP+tcpdf种生成PDF文档的实例

发布时间:2017-04-24

我们工作中常常有使用生成pdf文件的案例,那么今天我们来看看tdpdf这个函数库是怎么使用的

:可以先查看案例看看

http://www.erdangjiade.com/php/217.html


好,那么我们在tp5中是如何实现的,看代码:


TCPDF优势:
    支持页面页脚;
    支持HTML标签代码;
    支持jpg/png/gif/svg图形图像;
    支持表格;
    支持中文字符;(有些PDF类不支持中文或者处理中文相当麻烦)
    自动分页,自动页码,等等。
require_once('tcpdf.php');  
//实例化  
$pdf = new TCPDF('P', 'mm', 'A4', true, 'UTF-8', false);  
  
// 设置文档信息  
$pdf->SetCreator('erdangjiade');  
$pdf->SetAuthor('adou');  
$pdf->SetTitle('Welcome to erdangjiade.com!');  
$pdf->SetSubject('TCPDF Tutorial');  
$pdf->SetKeywords('TCPDF, PDF, PHP');  
  
// 设置页眉和页脚信息  
$pdf->SetHeaderData('logo.png', 30, 'erdangjiade.com', '提供网站模板,网站源码,网页图标,网页特效,中文字体等网页设计素材下载,为广大网友制作网页提供网站素材免费下载参考',   
      array(0,64,255), array(0,64,128));  
$pdf->setFooterData(array(0,64,0), array(0,64,128));  
  
// 设置页眉和页脚字体  
$pdf->setHeaderFont(Array('stsongstdlight', '', '10'));  
$pdf->setFooterFont(Array('helvetica', '', '8'));  
  
// 设置默认等宽字体  
$pdf->SetDefaultMonospacedFont('courier');  
  
// 设置间距  
$pdf->SetMargins(15, 27, 15);  
$pdf->SetHeaderMargin(5);  
$pdf->SetFooterMargin(10);  
  
// 设置分页  
$pdf->SetAutoPageBreak(TRUE, 25);  
  
// set image scale factor  
$pdf->setImageScale(1.25);  
  
// set default font subsetting mode  
$pdf->setFontSubsetting(true);  
  
//设置字体  
$pdf->SetFont('stsongstdlight', '', 14);  
  
$pdf->AddPage();  
  
$str1 = '欢迎来到erdangjiade.com';  
  
$pdf->Write(0,$str1,'', 0, 'L', true, 0, false, false, 0);  
  
//输出PDF  
$pdf->Output('t.pdf', 'I');
中文乱码解决方式:
example_038.php就是用来测试东亚字体的(比如简体/繁体中文、日文等等),打开此文件,找到$pdf->SetFont 这一行,修改为:
$pdf->SetFont(‘stsongstdlight’, ”, 20);
假如你的网站源码为GBK格式 输出的PDF内容为乱码的话 就需要做个简单的转换了,把需要打出的中文文字做。
iconv("gb2312//TRANSLIT",'utf-8',$str); 
$pdf->Write(0,iconv("gb2312//TRANSLIT",'utf-8','解决GBK网站输出中文乱码问题'),'', 0, 'L', true, 0, false, false, 0);



好,这就是我们使用的一个代码

如果有需要可以down下来使用