PDF印刷字符集问题

来源:互联网 发布:mysql mha 编辑:程序博客网 时间:2024/04/28 21:11
在J2EE的开发中,出Report是经常的事情,一般情况下这种工作如果完全手工来写肯定是不现实的,所以需要用第三方工具进行Report处 理。开源免费的比较好用的就是JasperReport了,不过JasperReport的格式文件是XML形式的,如果用手工来编写的话自然是痛苦万 分。不过还好,有一个JasperReport的伴侣,那就是iReport,可以通过iReport来类似于RAD方法做好JasperReport的 格式文件。这里我用的是jasperreports-1.2.2和iReport-1.2.2

    在进行HTML,Excel, RTF格式,或者干脆直接打印到打印机上的时候,字体显示都是正常的,不会出现乱码现象,但是唯独在出PDF文件的时候,乱码问题就跑了出来了,怎么也搞 不定,比如输入中文“一二三四五”,写成一个Label文字,PDF就怎么设置也显示不出来。经过调查研究,发现是因为Encoding编码和字体不匹配 造成的。如果要在PDF上输入中日韩三国文字,那必须要额外下两个Jar包,包括iTextAsian.jar以及 iTextAsianCmaps.jar,这两个包里面有东亚三国的Encoding以及字符集的定义。下面就简单了,如果要显示的是中文字符集的话。那 Encoding选择UniGB-UCS2-H (Chinese Simplified),字符集选择STSong-Light就可以了,如果是日文字符的话,Encoding选择UniJIS-UCS2-HW-H (Japanese),字符集选择HeiseiKakuGo-W5就可以正常印刷PDF。

    虽然PDF乱码情况暂时得到了解决,不过还是觉得有点不爽,那就是没有找到一个通用的字符集,既能正确印刷中文,也可以正确印刷日文,就是类似于UNICODE的那种字符集。所以以后遇到东亚各种字符的时候,还必须区别对待,进行编码以及字符集的个别设置。

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 怀孕便秘怎么办或大便太干拉不出 肠鸣便秘怎么办多尿 奥司他韦过量怎么办 憋的时间长尿痛怎么办 手过敏了怎么办最简单 肾结石不痛但是有血尿怎么办 儿童医院血液科挂不到号怎么办 搬完重物手抖怎么办 弯腰搬重物腰疼怎么办 搬了重物后腰疼怎么办 例假不走公务员体检血尿怎么办 憋尿久了尿不出来怎么办 憋尿引起的总有尿意怎么办 如果孕妇憋尿了怎么办 孕妇憋尿半个月怎么办 尿憋久了排空后膀胱疼怎么办 胸疼肚子疼不规则流血怎么办 上小便下面会痛怎么办 两岁宝贝憋尿怎么办 打激素脸胖了怎么办 医生写的病历看不懂怎么办 怀孕尿蛋白3个加怎么办 两周岁宝宝牙齿坏掉怎么办 前列缐炎引起尿血怎么办 牙齿牙根长在神经里怎么办 牙齿杀完神经牙根发炎怎么办 牙齿有大洞好疼怎么办 大门牙有蛀牙了怎么办 大门牙蛀牙黑了怎么办 大门牙蛀牙有洞怎么办 大门牙的缝蛀了怎么办 最里面的牙烂了怎么办 牙齿蛀了个洞怎么办办 牙齿痛怎么办才能治好? 门牙牙齿蛀掉了怎么办 吃了辣的牙齿痛怎么办 牙颈部楔状缺损怎么办 牙齿磨了很疼怎么办 小孩牙有窟窿疼怎么办 西瓜吃多了尿不停怎么办 吃了个西瓜不停拉肚子怎么办