将HTML 转为pdf


项目中有需求把 html页面显示转为pdf, 于是找了个例子,具有可行性的是这个
JS 如何将 HTML 页面导出为 PDF 该博主给了方法,使用了 html2canvas 和 jspdf 两个js 库来操作的,两个库的github地址分别是
1. https://github.com/niklasvh/html2canvas
2. https://github.com/MrRio/jsPDF

博主核心方法:

document.getElementById("btn-html2canvas").onclick = function(){html2canvas(document.getElementById("content"), {onrendered: function(canvas) {//通过html2canvas将html渲染成canvas,然后获取图片数据var imgData = canvas.toDataURL('image/jpeg');//初始化pdf,设置相应格式var doc = new jsPDF("p", "mm", "a4");//这里设置的是a4纸张尺寸doc.addImage(imgData, 'JPEG', 0, 0,210,297);//输出保存命名为content的pdfdoc.save('content.pdf');}});}

本人在实际中使用发现无法实现功能,继续翻了github 该项目文档,发现写法已经变了,原来是和博主使用的版本不一致导致的:
github上

  1. html2canvas 官方例子:
html2canvas(document.body).then(function(canvas) {document.body.appendChild(canvas);
});
  1. jspdf 官方例子:
//Then you're ready to start making your document:// Default export is a4 paper, portrait, using milimeters for units
var doc = new jsPDF()doc.text('Hello world!', 10, 10)
doc.save('a4.pdf')//If you want to change the paper size, orientation, or units, you can do:// Landscape export, 2×4 inches
var doc = new jsPDF({orientation: 'landscape',unit: 'in',format: [4, 2]
})doc.text('Hello world!', 1, 1)
doc.save('two-by-four.pdf')

于是本人改进了方法如下:

html2canvas(document.getElementById("content")).then(function(canvas){var imgData = canvas.toDataURL('image/jpeg');//初始化pdf,设置相应格式var doc = new jsPDF("p", "mm", "a4");//这里设置的是a4纸张尺寸doc.addImage(imgData, 'JPEG', 0, 0,210,297);//输出保存命名为content的pdfdoc.save('content.pdf');});

这里只改变了html2canvas 的方法就生效了。

将HTML 转为pdf相关推荐

  1. python 怎么将数组转为列表_图片转换成pdf格式怎么操作?什么软件能将图片转为pdf?...

    伙伴们好,你们知道如何把图片转为pdf格式吗?前一阵子我参加了一个家居行业大会,在会议上拍摄了不少会议照片,包括主持人讲话.嘉宾出席.观众提问.产品推广等环节都拍摄了不同的角度.拍摄好后,需要传送给写 ...

  2. php mpdf html 转pdf,使用 MPDF 将HTML转为PDF,然后将该PDF转为PNG图片的时候,中文报错... ......

    第一步: 使用 MPDF(版本6.1) 将 HTML 页面转为PDF文件,可以转成功.代码如下: $html = "对盲人初学者来说,它无需任何额外的修改."; // $html ...

  3. python将数字转为0010_用Python将HTML转为PDF。

    上期提到了如何获取公众号文章信息,这回就说下怎么将网页转为PDF,方便平常学习. 然后扩散一下之前一个比赛的结果(华章计算机抖音大赛). 顺便谈谈自己对今后送书的一个想法. 另外之前的送书活动,有中奖 ...

  4. java 图片合成pdf_java将多张图片合并转为PDF

    所需jar包:com.lowagie.text package weaver.gy.util; import java.awt.image.BufferedImage; import java.io. ...

  5. 怎么将ppt转为pdf?

    PPT这个词,就是演示的代名词,比如工作报告,数据报告,各种演示文件都能在PPT上被制作出来,需要做的也就是打字添加图片排班等,但是我们需要把PPT转换为Word的时候却又无从下手,今天就把最效率的方 ...

  6. php mpdf html 转pdf,使用 MPDF 将HTML转为PDF,然后将该PDF转为PNG图片的时候,中文报错... ...汗血宝马...

    第一步: 使用 MPDF(版本6.1) 将 HTML 页面转为PDF文件,可以转成功.代码如下: $html = "对盲人初学者来说,它无需任何额外的修改."; // $html ...

  7. php html转为pdf文件,php使用wkhtmltopdf实现html转pdf

    项目中有需求将html页面实时转为pdf并提供下载.经过各种查找比对,最终使用了wkhtmltopdf工具来实现. wkhtmltopdf,可以很方便的将输入的url渲染并打印成pdf文件.当然也有一 ...

  8. java pdf中文乱码_java转pdf(html转为pdf),解决中文乱码,标签不规范等问题

    第一步,下载jar包以及建对应的文件夹.注意pd4ml的jar要选择pro版本.然后建一个pd4fonts.properties 里面对应的字体. SimSun = simsun.ttf 前面为变量名 ...

  9. python将html存为pdf_用Python将HTML转为PDF。

    上期提到了如何获取公众号文章信息,这回就说下怎么将网页转为PDF,方便日常学习.html 而后扩散一下以前一个比赛的结果(华章计算机抖音大赛).数据库 顺便谈谈本身对从此送书的一个想法.微信 另外以前 ...

  10. php将word转txt,PHP如何将将word文件转为pdf

    PHP将word文件转为pdf的方法:首先修改[php.ini],并重启环境:然后安装微软office套件:最后配置office组件服务即可. PHP将word文件转为pdf的方法: 1.修改php. ...

最新文章

  1. 【虚拟化实战】VM设计之一vCPU
  2. Linux下php连接sql server 2008
  3. mysql日期序列填充_MySQL如何在范围内填充缺失的日期?
  4. 2019一起走,健康幸运全都有
  5. ale插件 vim_Vim之代码异步检测插件 ALE -- 实时检查verilog等代码的正确性
  6. bzoj2127 happiness 最小割
  7. java的线程的daemon_Java 多线程(四)之守护线程(Daemon)
  8. day0学习开始,起于markdown
  9. 2020/2/24Axure 中继器使用心得
  10. CSS 3 五光十色的变色龙动画的制作
  11. 苹果怎么用微信链接服务器,苹果手机如何设置微信登陆锁
  12. 云脉档案管理系统助力档案信息化建设
  13. AMTD:一种适应性移动目标防御方法
  14. Matlab人形机器人建模与仿真
  15. UVALive 4126 Password Suspects(AC自动机+dp)
  16. Fedora 14 root权限登录
  17. tp6框架结合阿里短信接口发送短信并记录redis
  18. c++ 字符串匹配算法Robin-Karp算法
  19. 木棍上的蚂蚁jolj2466 模拟法
  20. 灯光通信:二维码时代将终结!

热门文章

  1. 常见的一些威胁情报分析平台
  2. 【不懂就问】互联网、因特网和万维网到底是什么
  3. 应急照明市电检测_应急照明接线方式,这几点你必须知道!
  4. 请假系统jsp mysql_[源码和文档分享]基于JSP和MYSQL数据库实现的请假管理系统
  5. 最新Oracle 11g OCA/OCP/OCM 认证考试体系和认证途径
  6. 惠普笔记本无法调节亮度解决办法【成功解决记录贴】
  7. android ftp同步程序,ftp同步 安卓,安卓手机ftp上传下载文件功能同步视频照片
  8. 反思中国十大失败企业
  9. ACM1008玛雅历 剖析
  10. 前端切页快速上手系列