码迷,mamicode.com
首页 > 其他好文 > 详细

生成PDF的几种方式

时间:2017-06-07 14:11:53      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:pdf、php、web、js、wkhtmltox

1、后台生成PDF

thinkphp利用MPDF插件

示例代码:

public function pdf(){

    //引入类库

    Vendor(‘mpdf.mpdf‘);

    //设置中文编码

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

    //html内容

    $html=‘<h1><a name="top"></a>一个PDF文件</h1>‘;

    $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(‘image/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的几种方式

标签:pdf、php、web、js、wkhtmltox

原文地址:http://fengzhankui.blog.51cto.com/6755977/1933004

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!