iText中文处理
来源:互联网 发布:淘宝客qq群推广助手 编辑:程序博客网 时间:2024/05/22 03:26
下面说说这两天用iText解决的以及没解决的问题(我下载的是itext-5.1.0):
1.错误信息:com.itextpdf.text.DocumentException: Font "STSongStd-Light" with "UniGB-UCS2-H" is not recognized。这是因为亚洲字体包没引入或引入了老版本的亚洲字体包(我当时就是从ireport中直接拿来这个包的,ireport用的是iText2.1.7,所以这个亚洲字体包是老版本的)。iText从5.0更改了包名,和以前的亚洲字体包不配套了。 去http://sourceforge.net/projects/itext/files/extrajars/下载extrajars-XX.zip,新的亚洲字体包就在这里面。请参照iText中的notice.txt文件。
2 .用table.getDefaultCell()设置的属性,并没有实现预想的效果。这个问题就没搞定,最后逐一设置的cell的属性。
3.大表格加入内存回收功能后,部分页面没有表头或多个表头。这个问题可就“神奇”了。首先,它居然把我不停地报内存溢出的问题搞定了(呵呵,这是它的功能所在,也是必须的);其次,居然有些页面没有表头。代码如下所示: int fregmentSize = 1017;// 定义每一段落的行数(用于释放内存) for (int i = 0; i < dataList.size(); i++) { if (i % fregmentSize == fregmentSize - 1) { document.add(table); table.deleteBodyRows(); table.setSkipFirstHeader(true); } ………… }
本来我定义的 fregmentSize 值是100,结果发现有些页面没有表头。这是因为清理table时正好达到页尾,即下一条数据需要在新的一页显示。这时table.setSkipFirstHeader(true)设置了表头不显示……悲剧了。可是如果设置显示表头table.setSkipFirstHeader(false),那么每次清理表格就会显示一次表头(pdf中就会一页中显示多个表头),显然更不合理。最后更改了fregmentSize 的值,以减少这样事情的发生。希望有解决这个问题的朋友能给留个解决方法。
4.在学习中会有一些例子中遇到RtfWriter2、HtmlWriter就不要深研究了。因为这两东西从5.0已经从itext中独立出来了。我在网上好不容找到iText-rtf包,还是老版本的,没下载。sourceForge中有这个项目,但却没有提供jar,有个svn项目:
svn co https://itextrtf.svn.sourceforge.net/svnroot/itextrtf itextrtf
这个项目使用iText2.1.8.jar编写的。仍与5以上的版本不配套(如HeaderFooter类5以上的版本已经取消,这个项目中仍在使用)。弄到这里我就不想在看这些包了,后面的HtmlWriter包就真的没看。
(HtmlWriter的东西在xmlworker-x.y.z.jar中,仍参照itext的notice.txt文件。例子:http://demo.itextsupport.com/xmlworker/doc.html)
下面是我学习时在网上收集的一些资料。整理一下,贴到下面。
百度文库(中文教程):http://wenku.baidu.com/view/dbafbbc66137ee06eff918a5.html
旧版本的demo:http://www.roseindia.net/java/itext/index.shtml
页头页脚demo:http://www.coderanch.com/how-to/java/ItextExample
转自:http://www.4ucode.com/Study/Topic/2022026
- IText中文处理问题!!!
- iText的中文处理
- iText中文处理
- Itext中文处理(更新版) (转帖)
- 导出PDF ITEXT中文乱码处理
- Itext中文处理pdf(转)(改)
- Itext中文
- itext中文问题
- iText输出中文问题解决
- iText中文问题
- itext html 中文
- iText中输出 中文
- iText中输出中文
- itext 解决中文问题
- itext 中文替换内容
- itext , drawString ,中文
- iText 中文问题
- itext中文问题
- [备忘本]IOS系统
- 判断获取sd卡根目录和手机内存根路径
- 白话经典算法系列之七 堆与堆排序
- 图片自动切换
- 3D打印迷局:市侩资本与远大梦想
- iText中文处理
- 大端和小端
- 数据库中导出CSV文件与EXCEL文件数据对比可能遇到的问题与解决方法
- 人生智慧:我是一切的根源
- BIT寒假练习-2013__1009:Number Sequence
- Visual Studio2005 + Visual SourceSafe 2005 实现团队开发、源代码管理、版本控制
- 大数据量高并发的数据库优化
- 2012——年度总结
- Android 制定的ROM包(文件系统根目录结构分析)