You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Oracle Forms 12c如何在项的提示中正确显示勾选符号

Oracle Forms 12c 项提示运行时无法显示Wingdings 2勾选符号解决方法

问题根因

Forms Builder设计时的预览直接调用本地系统的GDI字体渲染逻辑,可以正常识别Wingdings 2字体的字符映射,所以输入P能显示为勾选符号;但运行时Forms的web渲染层默认走Java2D字体逻辑,没有加载到对应字体的映射配置时,会自动fallback到默认的普通字体,最终只显示普通字符P。

配置步骤

按以下顺序操作即可解决:

  • 先给Forms应用服务器安装对应字体
    • Windows Server环境:将Wingdings 2字体文件WINGDNG2.TTF复制到服务器的C:\Windows\Fonts目录完成安装
    • Linux/Unix Server环境:将WINGDNG2.TTF上传到$ORACLE_HOME/jdk/jre/lib/fonts目录,执行命令更新JDK字体缓存:
      cd $ORACLE_HOME/jdk/jre/lib
      ./../../bin/fc-cache -f
      
  • 修改Forms字体映射配置
    找到Forms域配置路径下的registry.dat文件(典型路径为$DOMAIN_HOME/config/fmwconfig/servers/WLS_FORMS/applications/formsapp_12.2.1/config/registry.dat,不同小版本号路径中formsapp_12.x.x的版本段略有差异),在文件的字体映射段添加如下配置:
    Wingdings 2 = Wingdings 2
    
    保存文件后,再找到同目录下的formsweb.cfg,检查fontAliasing参数是否设为true(默认即为true,不要手动改成false),同时确认没有配置全局规则把Wingdings开头的字体强制映射为宋体、微软雅黑等普通中文字体。
  • 调整对应项的属性配置
    回到Forms Builder中选中目标项,确认/修改以下属性:
    • Prompt:保持填P
    • Prompt Font Name:保持选Wingdings 2
    • Prompt Font Rendering:从默认的Automatic改为Native,强制运行时用本地原生字体渲染逻辑处理提示内容
  • 重启服务清缓存验证
    重启WLS_FORMS托管服务器,清空客户端浏览器的Java缓存和页面缓存后重新访问表单,提示位即可正常显示勾选符号。

补充说明:不建议直接用Unicode勾选符号(☑/√)替代Wingdings 2方案,12c早期版本的Prompt位对多字节Unicode符号的对齐支持有bug,会出现提示文字和项位置偏移、上下错位的问题。

内容的提问来源于stack exchange,提问作者user6186249

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 11:27:15