Java导出PDF用的最广的还是itext,itext导出PDF的方式有很多种,今天我介绍的是导出HTML到PDF,在我做这个功能的时候遇到过中文不显示,中文过长不会自动换行的问题,最后还是通过修改源码包解决了中文不换行的问题,不容易啊!!需要说明的是我是直接在后台查的数据并拼接成的HTML。
首先要引入三个jar包,jar包的下载地址为:http://download.youkuaiyun.com/download/beaacmen/10024666;此jar包已经是修改过的,亲测可用,下面直接贴代码
public void exportTopdf() throws Exception {
int fileNum = new Random().nextInt(1000000) + 1;//生成一个随机数作为pdf的名称
String fileUrl = "E:\\" + fileNum + ".pdf";//设置导出路径
OutputStream os = new FileOutputStream(fileUrl);
ITextRenderer renderer = new ITextRenderer();
ITextFontResolver font = renderer.getFontResolver();
font.addFont("C:/WINDOWS/Fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);//添加中文识别,这里是设置的宋体,Linux下要换成对应的字体
StringBuffer html = new StringBuffer();
// DOCTYPE 必需写否则类似于 这样的字符解析会出现错误
html.append("<!DOCTYPE html PUBLIC '-//W3C//DTD XH

最低0.47元/天 解锁文章
2811

被折叠的 条评论
为什么被折叠?



