php采用tcpdf生成pdf支持中文,图片


上次找到fpdf发现文档支持不足。而且含有php5.4不能用了的过期函数,图片进去也显示不了等问题。

特意找到这个tcpdf。

下载的地址

http://sourceforge.net/projects/tcpdf/files/

搞一个试试

中文字体包下载

http://sourceforge.net/projects/hawebs/files/Assistance/PHP/Droid%20Sans%20Fallback%20-%20PHP.zip/download

下载后,将它解压放在droidsansfallback.php、droidsansfallback.z以及droidsansfallback.ctg.z这三个文件复制到 TCPDF\fonts 下面即可

注意代码中
$pdf->SetFont(‘droidsansfallback’, ”, 12);
此行代码控制中文显示
require_once(‘../config/lang/chi.php’);
表示调用中文包

控制图片输出
$pdf->Image(‘../images/3.jpg’, ”, ”, 0, 0, ”, ”, ”, false, 300, ”, false, false, 1, false, false, false);

代码直接在下载的example包中复制008那个进行修改。

代码如下

 
<?php
 
require_once('../config/lang/chi.php');
require_once('../tcpdf.php');
 
// create new PDF document
$pdf = new TCPDF(PDF_PAGE_ORIENTATION, PDF_UNIT, PDF_PAGE_FORMAT, true, 'UTF-8', false);
 
// set document information
$pdf->SetCreator(PDF_CREATOR);
$pdf->SetAuthor('Nicola Asuni');
$pdf->SetTitle('中文');
$pdf->SetSubject('TCPDF Tutorial');
$pdf->SetKeywords('TCPDF, PDF, example, test, guide');
 
// set default header data
$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, PDF_HEADER_TITLE.' 008', 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
$pdf->setLanguageArray($l);
 
// ---------------------------------------------------------
 
// set default font subsetting mode
$pdf->setFontSubsetting(true);
 
// set font
$pdf->SetFont('droidsansfallback', '', 12);
 
// add a page
$pdf->AddPage();
 
// set color for text
$pdf->SetTextColor(0, 63, 127);
 
// write the text
$pdf->Write(5, '中文,你支持么。chinese support', '', 0, '', false, 0, false, false, 0);
 
$pdf->SetXY(40, 40);
$pdf->Image('../images/3.jpg', '', '', 0, 0, '', '', '', false, 300, '', false, false, 1, false, false, false);
 
 
// ---------------------------------------------------------
 
//Close and output PDF document
$pdf->Output('example_008.pdf', 'I');
 
//============================================================+
// END OF FILE                                                
//============================================================+

样例地址包罗万象

http://localhost/tcpdf/examples/

官方网站地址

http://www.tcpdf.org/

下载地址

http://sourceforge.net/projects/tcpdf/files/

月小升下载这个的时候,发现更新日志有2012年8月22日的记录,说明还有人在维护。太牛了。

如果你是一名技术人员可加我QQ 2651-0442-02,如果你是java技术人还可以加入QQ群 1784-9136-0
你将得到的不仅仅是技术的交流,还有职业机会,人生解惑.
首发地址:月小升博客https://java-er.com/blog/php-tcpdf/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
此条目发表在 PHP 分类目录,贴了 , 标签。将固定链接加入收藏夹。
既然来了,就评论一下,不会怀孕的

php采用tcpdf生成pdf支持中文,图片》有 3 条评论

  1. biquyo 说:

    给力的中文包 感谢

  2. Nate Zhang 说:

    找了好久终于找到一个帖子可以用了,字体下载链接可用,不走也很详细。谢谢

  3. Tomas 说:

    谢谢。不过包字型后整个pdf 变很大。不知道有没有档案小的字型

发表评论

电子邮件地址不会被公开。 必填项已用 * 标注

*

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">