千家信息网

如何生成PDF

发表于:2024-10-17 作者:千家信息网编辑
千家信息网最后更新 2024年10月17日,这篇文章将为大家详细讲解有关如何生成PDF,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、后台生成PDFthinkphp利用MPDF插件示例代码:public f
千家信息网最后更新 2024年10月17日如何生成PDF

这篇文章将为大家详细讲解有关如何生成PDF,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1、后台生成PDF

thinkphp利用MPDF插件

示例代码:

public function pdf(){

//引入类库

Vendor('mpdf.mpdf');

//设置中文编码

$mpdf=new \mPDF('zh-cn','A4', 0, '宋体', 0, 0);

//html内容

$html='

一个PDF文件

';

$mpdf->WriteHTML($html);

$mpdf->Output();

exit;

}

2.利用命令行将网页链接生成PDF

下载wkhtmltox

工具命令 链接 生成的PDF文件

./wkhtmltox/bin/wkhtmltopdf http://www.baidu.com test.pdf

3.利用js生成PDF

引入以下两个js插件

html2canvas.js

jspdf.debug.js

示例代码:

function explode(){
$(".ncap-order-details").css("background-color",'#FFFFFF');
html2canvas($(".ncap-order-details"), {
onrendered:function(canvas) {
var pageData = canvas.toDataURL('p_w_picpath/jpeg', 1.0);
var pdf = new jsPDF('', 'pt', 'a4');
pdf.addImage(pageData, 'JPEG', 0, 0, 595.28, 592.28/canvas.width * canvas.height );
pdf.save('stone.pdf');
}
})
}

原理:先截图,然后将截图插入到PDF中
$(".ncap-order-details")是要截图的div区域,截图默认是透明背景,所以提前设置背景色,然后将截图保存到PDF中

关于"如何生成PDF"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

0