您的位置 首页 php

用PHP将HTML生成PDF以及注意事项

近日有网友希望有一篇用PHP生成PDF的文章教程,好的今天我们就讲一讲怎么样用PHP将 html 生成PDF

我们使用的开源类库就是 TCPDF

GITHUB地址:

composer 安装:

composer require tecnickcom/tcpdf

DEMO 示例:

这里主要讲的是讲HTML生成PDF因为HTML格式绝大部分够用了,其它个性化的功能大家看下官方的DEMO就行了比如生成图表等

下面说下具体使用方式:

1. 实例化 TCPDF对象

$pdf = new TCPDF(PDF_PAGE_ORIENTATIN, PDF_UNIT, PDF_PAGE_FORMAT, true, ‘UTF-8’, false);

2.设置标题关键字等(步骤可以省略)

$pdf->SetCreator(PDF_CREATOR);

$pdf->SetAuthor(‘Nicola Asuni’);

$pdf->SetTitle(‘TCPDF演示’);

$pdf->SetSubject(‘TCPDF Tutorial’);

$pdf->SetKeywords(‘TCPDF, PDF, example, test, guide’);

3.设置字体(这步很重要不然中文乱码)

$fontname = TCPDF_FONTS::addTTFfont(‘Droid Sans Fallback.ttf’, ‘TrueTypeUnicode’, ”, 32);

$pdf->SetFont($fontname, ”, 20);

4.添加个页面

$pdf->AddPage();

5.将HTML生成PDF

$pdf->writeHTML($html);

6.输出(默认直接在浏览器显示)

$pdf-> Output ();

$pdf->Output(‘123.pdf’,’D’);//这个是下载,其他方式请替换参数

7.生成后的效果

320100011dd92ac9683a

链接列表等演示

31f10001efd3a70c174e

生成图片演示

320100011ddae353a42b

表格演示

最后总结:

1.一定要设置字体,否则中文乱码。最好使用文本的设置方法和字体。网上的设置字体的方法虽然能解决但是用pdfparser这个类读取生成后的PDF内容还是乱码(读取PDF内容的方法在我另一篇文章中有说到)

2.如果你设置了PDF的头和脚 还需在设置一遍字体

$pdf->SetHeaderData(PDF_HEADER_LOGO, PDF_HEADER_LOGO_WIDTH, ‘PDF头部标题’, ‘代码庸医’);

$pdf->setHeaderFont(Array($fontname, ”, PDF_FONT_SIZE_MAIN));

文章来源:智云一二三科技

文章标题:用PHP将HTML生成PDF以及注意事项

文章地址:https://www.zhihuclub.com/35193.shtml

关于作者: 智云科技

热门文章

网站地图