您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > HTML字符串转PDF问题解决
HTML字符串转PDF问题解决本人使用的是itext2.0.8,依赖文件:core-renderer.jar、iText-2.0.8.jar、iTextAsian.jar可以网上自行下载解决问题:1、中文乱码OutputStreamos=newFileOutputStream(filename);ITextRendererrenderer=newITextRenderer();renderer.setDocumentFromString(htmlstr);ITextFontResolverfontResolver=renderer.getFontResolver();fontResolver.addFont(“C:/Windows/Fonts/SIMSUN.TTC,BaseFont.IDENTITY_H,BaseFont.NOT_EMBEDDED);renderer.layout();renderer.createPDF(os);os.close();增加红色部分代码,SIMSUN.TTC是系统的宋体字体文件。2、字体颜色设置字体颜色不能用font标签,需用span标签,具体写法:spanstyle=\color:red\★/span。3、自定义table列宽在td或th标签内无论是写width=”10%”或style=”width:10%”再或者在table标签内增加非标准HTML属性columns=3widths=50;10;40都无效,正确的做法是用CSS来控制;第一步:在HTML的head部分增加:styletype=”text/css”mce_bogus=”1”.scoreCss{width:13%;}/style第二部:在需要设置宽度的td或th上应用样式thalign=“center”style=“background-color:#ededed;height:30px;”class=“scoreCss”。4、数组越界异常:Index3,size3出现这种异常主要是由于HTML不规范,例如:tabletrth测试列1/thth测试列2/th/trtr/tr/table上面的HTML代码有一个空的tr;table的第一行定义了两列,而第二行没有指定列,就会报错;空行应改成trtd/tdtd/td/tr,即列数要统一。5、td中文自动换行在HTML的head部分增加:styletype=”text/css”mce_bogus=”1”table{table-layout:fixed;word-break:break-strict;}/style这样table中的单元格内就会中文自动换行了
本文标题:HTML字符串转PDF问题解决
链接地址:https://www.777doc.com/doc-2877147 .html