zoukankan      html  css  js  c++  java
  • Oracle EBS的BIP报表中显示特殊字体

    http://oracleseeker.com/2009/08/25/font_mapping_setup_for_special_character_print_in_oracle_ebs_bip/

    如若在BIP报表中使用了一些特殊的字体,这些字体在JRE的字体库中没有的话,则BIP报表的运行结果就不正确,最典型的例子就是条码字体的打印。

    如下图是我在rtf模板中使用code39字体设计的条码显示

    rtf_template

    但是在Oracle EBS环境下运行之后的结果如下,条码字体的格式丢失了:

    bar_code_no_font_mapping_pdf

    这是由于FO引擎在生成报表的时候找不到合适的字体,而采用了默认的字体而生成的结果,为了解决这个问题,需要定义字体的转换:

    1,在XML Publisher Administrator职责下,首先上传字体文件

    bar_code_39

    2,在XML Publisher Administrator职责下,定义字体转换映射集

    由于我们的模板使用的是RTF格式的,因此Type需要选择FO To PDF

    bar_code_font_mapping_set

    3,在XML Publisher Administrator职责下,定义字体转换映射关系

    输入Font Family,这个值可以打开字体文件来查看

    根据模板中使用字体的情况来选择Style和Weight

    如果需要根据Locale来决定使用字体映射,则填入Language和Territory,不填代表所有语音环境下都适用

    bar_code_create_font_mapping

    bar_code_create_font_mapping2

    4,定义好字体映射之后,修改BIP模板文件的配置

    查询出BIP模板定义后,点击右上角的 Edit Configuration 按钮

    bar_code_edit_template_config

    展开FO Processing部分,设置Font mapping set为上面定义好的字体映射集

    bar_code_edit_template_fo_font_mapping

    再次运行BIP报表,结果如下,正是模板中所设计的结果:

    bar_code_font_mapping_pdf

    任何Oracle EBS没有提供的预定义字体使用到我们的模板文件中用来生成PDF报表,都需要通过上面描述的步骤来定义字体映射来完成特殊字符的打印。

  • 相关阅读:
    说一说Java的Unsafe类
    阿里云CentOS下安装jdk
    LeetCode 5
    五种方法实现Java的Singleton单例模式
    聊聊Java的final关键字
    LeetCode 4
    Java9都快发布了,Java8的十大新特性你了解多少呢?
    【Spring】mvc:annotation-driven 使用
    【gradle】【maven】gradle 转 maven pom.xml
    [GIT]比较不同分支的差异
  • 原文地址:https://www.cnblogs.com/xiaoL/p/5178690.html
Copyright © 2011-2022 走看看