使用pd4ml 将html转换为pdf

本文介绍了使用pd4ml将html转换为pdf时遇到的中文支持问题,包括字体jar包的修改和pd4ml pro版本对中文的支持。对比了pd4ml与itext在转换速度、纠错能力和中文字体支持上的差异。并提供了部分代码示例和pom.xml配置。
摘要由CSDN通过智能技术生成

使用pd4ml 将html转换为pdf 遇到的几个问题,总结一下,与大家共享一下:

1 网上自带的fonts.jar不支持中文,加载进去中文乱码 , 需要修改fonts.jar,为此本人已修改好所需要的jar包(支持宋体中文simsun.ttc),链接在这。

2 pd4ml.jar,官方声明,只有pro版本支持中文,这个就比较坑了,并且带demo的在转换成PDF会有水印。


优缺点:

pd4ml相比itext,速度快,纠错能力强,支持多种中文字体,但是是商业。

IText实现html2pdf,速度快,纠错能力差(对Css,标签样式要求很高,标签不闭合都无转换),支持中文(要求HTML使用unicode编码),但中支持一种中文字体,开源。


上部分代码:

//发送业务数据;

request.setAttribute("techProtocolReview",techProtocolReview == null ? 
new TechProtocolReview() : techProtocolReview);
//转发请求到jsp,返回解析之后的内容而不是输出到浏览器
String html = ServletUtils.forward(request,response
,"/WEB-INF/views/modules/pads/machinedesign/techProtocolReviewTrsfPdfView.jsp");
//System.out.println(html);
StringReader strReader = new StringReader(html);
try {
   HtmlToPdf.byte2File(HtmlToPdf.generatePDF(strReader), "E:/", "test.pdf");
   return new ReponseData.Builder(Constant.SUCCESS_CODE).message("页面转化PDF成功").build();
} catch (IOException e) {
   e.printStackTrace();
      logger
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值