http://oracleseeker.com/2009/08/25/font_mapping_setup_for_special_character_print_in_oracle_ebs_bip/
如若在BIP报表中使用了一些特殊的字体,这些字体在JRE的字体库中没有的话,则BIP报表的运行结果就不正确,最典型的例子就是条码字体的打印。
如下图是我在rtf模板中使用code39字体设计的条码显示
但是在Oracle EBS环境下运行之后的结果如下,条码字体的格式丢失了:
这是由于FO引擎在生成报表的时候找不到合适的字体,而采用了默认的字体而生成的结果,为了解决这个问题,需要定义字体的转换:
1,在XML Publisher Administrator职责下,首先上传字体文件
2,在XML Publisher Administrator职责下,定义字体转换映射集
由于我们的模板使用的是RTF格式的,因此Type需要选择FO To PDF
3,在XML Publisher Administrator职责下,定义字体转换映射关系
输入Font Family,这个值可以打开字体文件来查看
根据模板中使用字体的情况来选择Style和Weight
如果需要根据Locale来决定使用字体映射,则填入Language和Territory,不填代表所有语音环境下都适用
4,定义好字体映射之后,修改BIP模板文件的配置
查询出BIP模板定义后,点击右上角的 Edit Configuration 按钮
展开FO Processing部分,设置Font mapping set为上面定义好的字体映射集
再次运行BIP报表,结果如下,正是模板中所设计的结果:
任何Oracle EBS没有提供的预定义字体使用到我们的模板文件中用来生成PDF报表,都需要通过上面描述的步骤来定义字体映射来完成特殊字符的打印。
–