重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
在PHP代码中生成PDF文件是一项非常耗时的工作,早期的程序员通常是在PHP代码中利用FPDF生成PDF文件。但在如今,有很多的函数库可以使用,借助它们你可以从你提供的HTML文档生成PDF文件,从而让工作变得简单方便起来。
创新互联建站从2013年成立,先为晋源等服务建站,晋源等地企业,进行企业商务咨询服务。为晋源企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
FPDF是一个PHP类,它允许用纯PHP代码生成PDF文件,这也就是说我们不用使用PDFlib库。FPDF中的F就代表着自由:你可以以各种方式使用它,并根据你的需求调整它。下面我们来看看FPDF的特征:
1. 自由选择单元格,页面格式和边距;
2. 管理页眉和页脚;
3. 自动分页;
4. 自动换行和文本对齐;
5. 支持图片(JPEG,PNG,GIF);
6. 颜色管理;
7. 支持链接;
接下来再介绍一下可以直接从HTML生成PDF的函数库。
DomPDF
DomPDF是一个从HTML到PDF的转换器,它遵循CSS2.1的HTML布局,还有是用PHP编写的渲染引擎。DomPDF以样式为主导:它可以下载和读取外链样式表,内链样式标签和HTML元素的属性。它的特点包括:
1. 处理CSS属性,包括了@import,@media和@page规则;
2. 支持HTML的可见属性;
3. 支持外部样式表,通过本地或http/ftp;
4. 支持复杂的表结构;
8. 支持图片(JPEG,BMP,PNG,GIF);
5. 不依赖于其他PDF库;
TCPDF
TCPDF是一个用于生成PDF文件的开源PHP类,该项目起源于2002年,现在已经有全世界成千上万的人在使用。它的提点包括:
1. 基本功能不需要外部函数库;
2. 支持标准页面格式,自定义页面格式;
3. 支持UTF-8编码和从右向左的语言;
4. 支持各种字体;
5. 支持图片和图形的转换;
6. 支持页面压缩;
7. 支持页眉和页脚管理;
同步
首先需要安装wkhtmltopdf这个软件 需要执行shell_exec函数的php文件和安装的wkhtmltopdf.exe可执行文件在同一目录下,不然php找不到这个执行文件
shell_exec("wkhtmltopdf.exe --page-size A4 --outline 网页地址 pdf文件名");
--page-size 以A4纸的尺寸显示pdf内容
--outline 显示目录(网页中h1,h2来定)
网页地址 需要转成pdf的网页地址
pdf文件名 生成pdf的文件名,可以使用绝对路径
本文给大家介绍的是如何使用php生成pdf文件,并且把该文件加密或设置访问密码的方法,有需要的小伙伴可以参考下。
项目需求:php生成pdf文件,并且把该文件加密或设置访问密码
开源的TCPDF是基于PHP的一套类库,它能够很好的生成PDF格式的文档。并且支持文件加密,在目前的开源PHP框架、系统、应用中也使用得很广。这里是设置PDF文档的相关属性的方法原型,其中就可以设置密码
?
1
2
3
4
5
6
7
8
TCPDF::SetProtection
(
$permissions
=
array('print',
'modify',
'copy',
'annot-forms',
'fill-forms',
'extract',
'assemble',
'print-high'),
$user_pass
=
'',
$owner_pass
=
null,
$mode
=
0,
$pubkeys
=
null
)
通过SetProtection()方法设置后,生成的PDF文档就是加密过的,在用户打开PDF文档的时候就会要求输入访问密码
如果是可以打印,就可以使用虚拟打印机来处理:
方法一:使用虚拟打印机pdf factory即可,而且其他格式文件只要是能够打印,选择这个虚拟打印机,都可以做成PDF文件,很简单实用;
方法二:用其他虚拟打印机转成PDF文件。
方法三:使用专门的转换软件,把文件转成PDF文件。
实在不能打印,还可以截屏嘛,然后按照下面的方法做出PDF的:
方法一:使用虚拟打印机pdf factory即可,而且其他格式文件只要是能够打印,选择这个虚拟打印机,都可以做成PDF文件,很简单实用;
方法二:使用FreePic2Pdf软件,进行批量转换;
方法三:用其他虚拟打印机转成PDF文件。