wkhtmltopdf实现html导出pdf的方法
发表于:2024-10-24 作者:千家信息网编辑
千家信息网最后更新 2024年10月24日,这篇文章主要介绍"wkhtmltopdf实现html导出pdf的方法",在日常操作中,相信很多人在wkhtmltopdf实现html导出pdf的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的
千家信息网最后更新 2024年10月24日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安全错误
数据库的锁怎样保障安全
网络安全网络扫描的步骤
嵌入式软件开发商防水手机
新一贷互联网科技有限公司
网络安全在我心手抄报图片大全
中国科学技术数据库
绵阳网络安全等级保护
成都市金硕马网络技术有限公司
c语言软件开发游戏过程
大华服务器硬盘安装教学
邮件服务器域名格式
hecs云耀云服务器有什么用
哈尔滨应用软件开发公司
tpshop的数据库文件
数据库自增序列优缺点
从数据库查出总的条数
海康威视ip广播服务器
海川玩的是什么服务器
上海智能软件开发规格尺寸
ecshop 数据库名
软件开发人员kpi提取
护苗网络安全教育课手抄报
access数据库选项在哪
gis数据库删除的数据怎么恢复
t1 系统数据库路径
移动智能网络安全标准
个人怎样提高网络安全意识
新闻周刊网络安全文字
女孩学网络安全
数据库在土地资源管理的应用
上报金融数据库多久上征信