具有Smartforms样式的Adobe Forms上的汉字?

2020-08-30 21:14发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)您好,我有一个Adobe表单,其...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


您好,我有一个Adobe表单,其中包含一个使用SmartForms文本模块填充的文本字段。 在表单上下文中,我选中了"从文本模块复制样式"。 我正在使用使用Courier字体的默认SYSTEM Smartform样式。 我正在使用的Smartforms文本模块以粗体显示多行。

此过程适用于拉丁语1语言,但不适用于简体中文(ZH)。 当我进行打印预览或使用简体中文打印表格时。 粗体和普通汉字混合在同一行上(请参见下图)。 字体似乎是Helvetica或Arial,而不是Courier。 Smartforms样式似乎无法正确应用于文本。

有人建议我如何使Smartforms样式在Adobe Form上正确使用简体中文吗?

ZH_Form.jpg (19.4 kB)
10条回答
灬番茄
2020-08-30 22:20

问题仅是因为您用于打印汉字的字体类型。

始终记住,您应该专门将中文字体用于 中文文本。 最简单的中文字体示例是SimSun或PmingLiU。还有许多其他此类字体。 这些字体是专为中文排版设计的。 字体大小,缩进,名称翻译,行距,所有设置都已设置。

为什么Courier不适用于中文?

很简单。 因为它是按这种方式设计的。 该字体是为拉丁文和其他一些语言设计的。 因此,如果您尝试使用Courier打印中文字体,SAP所做的就是代替显示JUNK,而是替换为可以显示中文文本的最接近的字体类型。 并使用Helvetica或Arial。

此问题的解决方法

您可以在表单中实现动态字体,而不必使用智能样式。 检查打印表单所用的语言,并根据语言从数据库表等来源中选择合适的字体并使用Java脚本,并在运行时更改文本字段的Font属性,然后再呈现PDF。

假设您有一个文本字段field1,并且想要动态更改其font属性,然后按如下所示在此字段上编写脚本。

this.font.typeface = var.rawvalue;

此处var将包含您先前获取的字体名称,具体取决于语言。

一周热门 更多>