电子书内容介绍了关于PHP、核心技术、实践方面的内容,目前豆瓣、亚马逊、当当、京东等电子书综合评分为:7.1
PHP中使用mpdf 导出PDF文件的实现方法
mPDF是一个很强大的PDF生成库,能基本兼容HTML标签和CSS3样式,这篇文章通过实例代码给大家介绍PHP中使用mpdf 导出PDF文件的实现方法。
具体代码如下所示:
/**
- PHP 使用 mpdf 导出PDF文件
- @param $content string PDF文件内容 若为html代码,css内容分离 非id,class选择器可能失效,解决办法直接写进标签style中
- @param $filename string 保存文件名
- @param
c
s
s
s
t
r
i
n
g
c
s
s
样
式
内
容
∗
/
f
u
n
c
t
i
o
n
e
x
p
o
r
t
p
d
f
b
y
m
p
d
f
(
css string css样式内容 */ function export_pdf_by_mpdf(
cssstringcss样式内容∗/functionexportpdfbympdf(content, $filename, $css = ‘’)
{
set_time_limit(0);
include_once ‘./mpdf/mpdf.php’;
//实例化mpdf
$_obj_mpdf = new \mPDF(‘utf-8’, ‘A4’, ‘’, ‘宋体’, 0, 0, 20, 10);
//设置PDF页眉内容 (自定义编辑样式)
$header = '
';
//设置PDF页脚内容 (自定义编辑样式)
$footer = ‘
’;
//添加页眉和页脚到PDF中
o
b
j
m
p
d
f
−
>
S
e
t
H
T
M
L
H
e
a
d
e
r
(
_obj_mpdf->SetHTMLHeader(
objmpdf−>SetHTMLHeader(header);
o
b
j
m
p
d
f
−
>
S
e
t
H
T
M
L
F
o
o
t
e
r
(
_obj_mpdf->SetHTMLFooter(
objmpdf−>SetHTMLFooter(footer);
$_obj_mpdf->SetDisplayMode(‘fullpage’);//设置PDF显示方式
o
b
j
m
p
d
f
−
>
W
r
i
t
e
H
T
M
L
(
′
<
p
a
g
e
b
r
e
a
k
s
h
e
e
t
−
s
i
z
e
=
"
210
m
m
297
m
m
"
/
>
′
)
;
/
/
设
置
P
D
F
的
尺
寸
A
4
纸
规
格
尺
寸
:
210
m
m
∗
297
m
m
!
e
m
p
t
y
(
_obj_mpdf->WriteHTML('<pagebreak sheet-size="210mm 297mm" />');//设置PDF的尺寸 A4纸规格尺寸:210mm*297mm !empty(
objmpdf−>WriteHTML(′<pagebreaksheet−size="210mm297mm"/>′);//设置PDF的尺寸A4纸规格尺寸:210mm∗297mm!empty(css) &&
o
b
j
m
p
d
f
−
>
W
r
i
t
e
H
T
M
L
(
_obj_mpdf->WriteHTML(
objmpdf−>WriteHTML(css, 1);//设置PDF css样式
o
b
j
m
p
d
f
−
>
W
r
i
t
e
H
T
M
L
(
_obj_mpdf->WriteHTML(
objmpdf−>WriteHTML(content);//将$content内容写入PDF
o
b
j
m
p
d
f
−
>
D
e
l
e
t
e
P
a
g
e
s
(
1
,
1
)
;
/
/
删
除
P
D
F
第
一
页
(
由
于
设
置
P
D
F
尺
寸
导
致
多
出
的
一
页
)
/
/
输
出
P
D
F
直
接
下
载
P
D
F
文
件
/
/
_obj_mpdf->DeletePages(1, 1);//删除PDF第一页(由于设置PDF尺寸导致多出的一页) //输出PDF 直接下载PDF文件 //
objmpdf−>DeletePages(1,1);//删除PDF第一页(由于设置PDF尺寸导致多出的一页)//输出PDF直接下载PDF文件//_obj_mpdf->Output(
f
i
l
e
n
a
m
e
.
′
.
p
d
f
′
,
t
r
u
e
)
;
/
/
filename . '.pdf', true); //
filename.′.pdf′,true);//_obj_mpdf->Output($filename . ‘.pdf’, ‘D’);
$_obj_mpdf->Output();//输出PDF 浏览器预览文件 可右键保存
exit;
}
$html = ‘
你看我哪里像好人’;
w
o
r
d
n
a
m
e
=
′
t
e
s
t
−
f
i
l
e
′
;
e
x
p
o
r
t
p
d
f
b
y
m
p
d
f
(
wordname = 'test-file'; export_pdf_by_mpdf(
wordname=′test−file′;exportpdfbympdf(html, $wordname);
PHP使用MPDF类生成PDF的方法
由于公司业务的需要,最近需要把html静态文件生成pdf,在网上找了很多类文件来实现,效果都不是很好.最先用的是tcpdf这个类特别的慢,而且当前版本有一个很让人头疼的问题—css中的背景图片无法获取到,找了很多资料都无法解决.最后发现mpdf可能实现该功能,大喜过望,而且效率也比tcpdf快.
mpdf的官方下载地址:http://www.mpdf1.com/mpdf/download
下载后里面有实例,可以参照着做一个就知道了.当然官方网站也有实例,网址:http://mpdf1.com/common/mpdf/examples/
在此推荐一本非常适合PHP学习的电子书内容:
186
官方提供的文档:http://mpdf1.com/manual/
<?php /* *功能:生成用户诊断报告PDF文件 *创建时间:-- */ //phpinfo();exit; //引入MPDF类文件 set_time_limit(); include '/include/MPDF/mpdf.php'; //实例化mpdf $mpdf=new mPDF('utf-','A','','宋体',,,,); //设置字体,解决中文乱码 $mpdf->useAdobeCJK = true; $mpdf->SetAutoFont(AUTOFONT_ALL); //获取要生成的静态文件 $html=file_get_contents('template.html'); echo $html;exit; //设置PDF页眉内容 $header='
'; //设置PDF页脚内容 $footer='
'; //添加页眉和页脚到pdf中 $mpdf->SetHTMLHeader($header); $mpdf->SetHTMLFooter($footer); //设置pdf显示方式 $mpdf->SetDisplayMode('fullpage'); //设置pdf的尺寸为mm*mm //$mpdf->WriteHTML(''); //创建pdf文件 $mpdf->WriteHTML($html); //删除pdf第一页(由于设置pdf尺寸导致多出了一页) //$mpdf->DeletePages(,); //输出pdf $mpdf->Output(); exit; ?>