将html转换为pdf的工具有两个:phantomjs和wkhtmltopdf,下面分别对两个工具进行介绍。

phantomjs

phantomjs不仅仅只是一个html2pdf的工具,这个是一个Headless WebKit(现在chrome也支持这种模式运行了),可以用来写前端测试等一系列的功能(可惜的是该项目已经停止维护了,项目地址:https://github.com/ariya/phantomjs)。回到主题,phantomjs使用简单,可以自己编写相关测输出脚本,运行的cmd:phantomjs.exe rasterize.js http://www.oschina.net/ test.pdf "A4",可以参考该项目的官方网址:https://phantomjs.org/,比较可惜的是,该项目在window下生成的pdf是很完美的,但是linux下生成的pdf文件就比较糟糕了,主要是dpi惹的祸,直到项目停止维护,该问题都没有解决。为了解决linux下可以完美渲染,在网上查找了很多资料,最终发现phantomjs的pdf生成功能依赖于另一个项目wkhtmltopdf。

wkhtmltopdf

该项目是一个将html转化为pdf的项目,项目地址:https://github.com/wkhtmltopdf/wkhtmltopdf,该工具生成pdf非常简单,cmd:wkhtmltopdf {url} {file} 该工具可以解决linux下生成pdf 的dpi的问题。

需要注意的是,在linux下生成生成pdf很由可能会产生乱码的问题,主要是linux服务器上缺少字体。可以将window的字体copy到linux的/var/share/fonts文件夹下面然后刷新字体。

//copy font

cd /usr/share/fonts/

mkfontscale

mkfontdir

fc-cache

fc-list :lang=zh

准备工作做完后就可以使用工具将html转换为pdf了。

ps:wkhtmltopdf比较坑的是,里面有许多的默认选项是开启的会导致一些无法想象的结果,本人就遇到过--enable-smart-shrinking(默认)导致生成出来的pdf完全走样的问题。wkhtmltopdf相对于高速发展的互联网,一些新的技术都没有很好的支持,制作生成的html页面时,还是使用比较基础的技术,尽量使用支持比较完整的规范,减少后面会踩的坑

ps: chrome也提供了headless模式,该模式下也可以进行pdf的生成,

手机html转换为pdf,html转换为pdf(示例代码)相关推荐

  1. aspose pdf java,Java 使用aspose.pdf将多张图片转成pdf的方法及示例代码

    1.Aspose组件下载 2、多张图片转成pdf 1) 验证license/** * 获取license * * @return */ public static boolean getLicense ...

  2. linux pdf 转 txt文件,linux 下 pdf 转换成txt(示例代码)

    pdf有转换,如果是非扫描的,转换很快,识别率100%,很多软件可以转:如果是扫描的,就比较麻烦需要用到OCR技术(文字识别). 在linux下: 依赖包  poppler-utils  tesser ...

  3. python手机话费_查询话费订单详情示例代码

    #!/usr/bin/python # encoding:utf-8 import urllib2, json, urllib, hashlib # 3.获取订单详情 data = {} data[& ...

  4. java修改图章图片_Java处理PDF图章的方法示例(代码)

    本篇文章给大家带来的内容是关于Java 处理PDF图章的方法示例(代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 图章(印章)是一种在合同.票据.公文等文件中表明法律效应.部门 ...

  5. 安卓手机如何把PDF文件转换为JPG图片

    PDF转换成JPG是在办公中比较常用的技能:因为有时你需要不是PDF文档,而是PDF文件中的某张图提出来给客户看.本文为大家介绍了使用迅捷PDF转换器将PDF转换为JPG的方法. 操作步骤: 1:先将 ...

  6. python pdf报告_Python实现html转换为pdf报告(生成pdf报告)功能示例

    本文实例讲述了Python实现html转换为pdf报告(生成pdf报告)功能.分享给大家供大家参考,具体如下: 1.先说下html转换为pdf:其实支持直接生成,有三个函数pdfkit.f 安装pyt ...

  7. bmp转换tiff c++代码_如何用Java语言将图像转换为PDF?Spire.PDF for Java轻松搞定

    对于开发人员,在日常工作中经常也会处理许多文档格式,将图像转换为PDF也是常有的事.那么,在Java语言开发中,如何将图像转换为PDF呢? Spire.PDF for Java支持将多种图像格式(例如 ...

  8. 教程:使用C#将PDF页面转换为PNG图像

    PDF被认为是适合打印和共享的文档格式.但是,在某些情况下,需要将PDF文件中的页面转换为PNG图像.例如,当要将PDF页面嵌入网页或生成PDF封面等时.在本文中,将学习如何在.NET应用程序中自动将 ...

  9. 如何将PDF文件转换为PNG图片?

    参考资料:https://www.reneelab.com.cn/how-to-convert-pdf-to-png.html 目录 一.PDF与PNG 二.PDF转换软件介绍:快速将PDF文档转为P ...

  10. pdf转换成excel文件_将PDF文件转换为Excel

    pdf转换成excel文件 When I got back to my office after a recent vacation, there was an email from Una, abo ...

最新文章

  1. Windows服务器上配置环境,并上传Django项目流程记录
  2. 性能优化(数据库设计原则)
  3. [渝粤教育] 中国地质大学(武汉) 文化遗产与自然遗产 参考 资料
  4. 2010 北大软件及微电子学院 《软件实现技术》小组博客
  5. PyTorch 1.0 中文官方教程:使用 PyTorch 进行图像风格转换
  6. android系统应用程序,Android调用系统应用程序
  7. 又一自动驾驶独角兽诞生!Momenta获2亿美元总融资,腾讯首投中国无人车
  8. Spark utils —— 设置日志级别
  9. 关于定时任务中批量更新方案思考
  10. 5GgNB和ng-eNB的主要功能
  11. 计算机编程教育现状,中小学生编程教育现状调查研究
  12. 马赛克 拼图 python_使用Python的马赛克艺术。
  13. wp-db.php,WordPress中的数据库操作类wp-db.php
  14. 计算机为什么老是重启,电脑总是已计划自动重启怎么办 已计划自动重启怎么关闭...
  15. 每天一个CSS小特效,文字闪烁——【钢铁侠:爱你三千遍】
  16. 在网页中搜索指定内容和以PDF格式保存网页
  17. CS/BS架构是什么?以及他们的区别
  18. 计算带余除法------C语言
  19. [object Object]
  20. NPOI读写Excel,Word,PPT文件

热门文章

  1. C# 通过串口发送短信
  2. 高级计算机网络(习题三加解析)
  3. Eclipse导入项目出现叹号和差号问题的解决方法
  4. 微机原理学习笔记-常见寻址方式
  5. 基于Python的参考文献检索工具开发
  6. 鸿鹄工程项目管理系统 Spring Cloud+Spring Boot+Mybatis+Vue+ElementUI+前后端分离构建工程项目管理系统
  7. 简易的整人病毒(c语言实现)
  8. (转载)Python 代码格式化工具 Black-Python
  9. Win8控制面板快捷键
  10. android 阻止系统进入深度休眠(不影响正常休眠逻辑)