html2file

Project Url: petterobam/html2file
Introduction: 收集一系列 html 转文档的开源插件,做成 html 页面转文件的微服务集成 Web 应用,目前包含 html 转 PDF、html 转图片、html 转 markdown、html 转 word、excel 等等。
More: Author   ReportBugs   
Tags:

Build Status MIT Licence stable

自己用 java 写文档转化生成果然有很多弊端和不兼容的地方,而一些开源插件转这些东西还是效果蛮不错,于是心生收集各种插件(兼容 windows 和 linux)并封装成服务的想法。

这里我将收集一系列 html 转文档的开源插件,做成 html 页面转文件的微服务集成 Web 应用,预计包含:

  1. 网页转 PDF
  2. 网页转图片
  3. 网页转 TEXT
  4. 网页转 WORD
  5. 网页转 markdown
  6. 网页转 excel
  7. 网页转...

目前支持

wkhtmltopdf 演示图片

1.网页转 PDF(wkhtml2pdf 插件

例如:http://localhost:7800/html2pdf?pageUrl=https://wkhtmltopdf.org

2.网页转图片(wkhtml2pdf 插件

例如:http://localhost:7800/html2image?pageUrl=https://wkhtmltopdf.org&fileExt=[可为空|默认 .png]

jHTML2Md 演示图片

3.网页转 Markdown(参用jHTML2Md

例如:http://localhost:7800/html2markdown?pageUrl=http://jsoup.org

html2word 演示图片

4.网页转 WORD(参用Apache POI

例如:http://localhost:7800/html2word?pageUrl=http://poi.apache.org

html2word 演示图片

5.网页转 Excel(参用table-to-xls

例如:http://localhost:7800/html2excel?pageUrl=http://www.jjwxc.net/bookbase_slave.php?booktype=free

API 服务

  1. 服务入口:/html2file

  2. 请求方式:post

  3. 服务入参:

     {
         "pageUrl":"https://wkhtmltopdf.org",
         "fileType":"2",
         "fileExt":""
         "pageHtmlContent":""
     }
    
    • pageUrl:目标链接,带 http 的链接,无登陆权限验证
    • fileType:文件类型,1-img,2-pdf,3-markdown,4-word,5-excel
    • fileExt:文件扩展名,图片转化可以转化为不同后缀格式的图片
    • pageHtmlContent:目标页面 Html 内容,当不能提供 pageUrl 时,将 html 内容传入也可以转化,其中引用的 css 和 js 需要为带 http 的路径,不能为相对路径
  4. 服务出参:

     {
         "status":1,
         "result":"/output/20180417/pdf/9c3fd3018bb041429bba702cd127be9e.pdf",
         "errorMsg":""
     }
    
    • status:状态,1-成功,-1-失败
    • result:结果,这里为转化后的文件路径
    • errorMsg:错误信息

服务部署

服务开箱即用,Maven 已经配好发布过程,install 后将 dist 内的文件夹复制到服务器,将进入到 bin/ 文件夹下面

  1. linux 系统
chmod +x html2file.sh  #授权脚本
sh html2file.sh start  #启动服务
sh html2file.sh stop   #停止服务
sh html2file.sh reload #重启服务
sh html2file.sh status #状态查看
sh html2file.sh log    #日志查看

中文乱码或空白的话,将 resources/font/simsun.ttc 拷贝到 linux 服务器 /usr/share/fonts/ 目录下

  1. windows 系统

直接双击 html2file.bat 文件即可,也可以将该文件注册成服务,在服务管理里面启动。

Star History

star-history-20231110

Apps
About Me
GitHub: Trinea
Facebook: Dev Tools