wkhtmltopdf实现html导出pdf的方法
发表于:2024-10-25 作者:千家信息网编辑
千家信息网最后更新 2024年10月25日,这篇文章主要介绍"wkhtmltopdf实现html导出pdf的方法",在日常操作中,相信很多人在wkhtmltopdf实现html导出pdf的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2024年10月25日wkhtmltopdf实现html导出pdf的方法
这篇文章主要介绍"wkhtmltopdf实现html导出pdf的方法",在日常操作中,相信很多人在wkhtmltopdf实现html导出pdf的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"wkhtmltopdf实现html导出pdf的方法"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
在风控系统开发过程中,我使用到了wkhtmltopdf来完成后端生成pdf导出的功能。其中,为此功能,我也编写了一个wkhtmltopdf的工具类,可以反复采用。
一、HtmlToPdfInterceptor类
本类是为了能够开个线程实现wkhtmltopdf这个过程:
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;public class HtmlToPdfInterceptor extends Thread { private InputStream is; public HtmlToPdfInterceptor(InputStream is) { this.is = is; } public void run() { try { InputStreamReader isr = new InputStreamReader(is, "utf-8"); BufferedReader br = new BufferedReader(isr); String line = null; while ((line = br.readLine()) != null) { System.out.println(line.toString()); //输出内容 } } catch (IOException e) { e.printStackTrace(); } }}
二、HtmlToPdf工具类
当然,首先是要在服务器上安装好了wkhtmltopdf这个软件,并且配置好环境变量和中文字符集。
import java.io.File;public class HtmlToPdf { // wkhtmltopdf在系统中的路径 //windows环境// private static final String toPdfTool = "C:\\Program Files\\wkhtmltopdf\\bin\\wkhtmltopdf.exe"; //linux环境// private static final String toPdfTool = "//usr//local//bin//wkhtmltopdf"; public static boolean convert(String toPdfTool, String srcPath, String destPath) { File file = new File(destPath); File parent = file.getParentFile(); // 如果pdf保存路径不存在,则创建路径 if (!parent.exists()) { parent.mkdirs(); } StringBuilder cmd = new StringBuilder(); //引入wkhtmltopdf cmd.append(toPdfTool); cmd.append(" "); //设置页面大小 cmd.append(" --page-size A4"); //左边间距 cmd.append(" --margin-left 4"); // 页眉下面的线 cmd.append(" --header-line"); //页眉中间内容 cmd.append(" --header-center 中之保金融科技(成都)有限公司 "); // (添加一个HTML页眉,后面是网址) cmd.append(" --margin-top 2cm "); // (设置页眉和内容的距离,默认0) cmd.append(" --header-spacing 5 "); //设置在中心位置的页脚内容 cmd.append(" --footer-center 第[page]页/共[topage]页"); //页脚字体大小 cmd.append(" --footer-font-size 7"); // * 显示一条线在页脚内容上) cmd.append(" --footer-line"); // (设置页脚和内容的距离) cmd.append(" --footer-spacing 0 "); cmd.append(srcPath); cmd.append(" "); cmd.append(destPath); boolean result = true; try { Process proc = Runtime.getRuntime().exec(cmd.toString()); HtmlToPdfInterceptor error = new HtmlToPdfInterceptor(proc.getErrorStream()); HtmlToPdfInterceptor output = new HtmlToPdfInterceptor(proc.getInputStream()); error.start(); output.start(); proc.waitFor(); } catch (Exception e) { result = false; e.printStackTrace(); } return result; }}
到此,关于"wkhtmltopdf实现html导出pdf的方法"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
内容
方法
页眉
学习
环境
路径
功能
大小
工具
更多
系统
过程
帮助
实用
为此
接下来
位置
公司
变量
字体
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
钢铁行业数据库审计技术原理
手抄报网络安全知识内容
软件开发项目变更要求
服务器安全选项设置
香港vps云服务器
服务器定时调用api接口
同时可以打开的数据库个数是
it跟软件开发有什么不同
平谷区综合网络技术服务软件
网络安全教育稿400
记算机网络技术毕业后好就业吗
江西库存软件开发平台
国内企业大数据服务器都在哪
vc访问数据库的方式
网络安全大赛陕西
网络安全快速入行
广西网络安全报警网站
数据库索引怎么实现的
如何找反向代理的服务器
软件开发网络科技
公安专网网络安全隐患工作小结
迷失在服务器的玩家
c 添加员工到数据库代码
船舶网络安全计划
湖南服务器维修哪家便宜
公安网络安全专项的江苏省考
软件开发 岗位量化
树莓派ss代理服务器
服务器访问了恶意域名
江西万安网络安全宣传报道