1. 概述
1.1 版本
报表服务器版本 | 功能变动 |
---|---|
11.0 | - |
1.2 字体使用逻辑
预览、导出、打印报表时,报表最终呈现的字体效果和设计器、服务器、浏览器所在的本地系统紧密相关。
预览、导出、打印报表时,字体主要来源于以下三个字体库:
系统字体:设计器、服务器、浏览器所在设备的系统字体。Windows系统所在位置:C:/Windows/Fonts;Linux系统所在位置:/usr/share/fonts
服务器依赖的 JRE 下的字体:%Tomcat%jre/lib/fonts
安装「itext7导出及国际化换行插件」后对应的字体文件:%FR_HOME%/webroot/WEB-INF/fonts
不同场景,使用的字体库不同。如下表所示:
使用方式 | 字体来源 |
---|---|
设计器设计时选择的字体 | 设计器所在电脑的系统字体+设计器工程依赖的 JRE 下的字体+itext7导出及国际化换行插件字体(若安装了插件) |
Web 端预览时使用的字体 | Web 浏览器所在电脑的系统字体 |
导出时使用的字体 | 服务器的系统字体+服务器依赖的 JRE 下的字体+itext7导出及国际化换行插件字体(若安装了插件) |
打印时使用的字体 | 零客户端打印时和导出相同,本地软件打印时使用本地系统字体和打印软件 JRE 下的字体 |
1.3 字体缺失检测
用户在预览、导出、打印报表时,若出现字体效果和设计的效果不一致时,可以根据 1.2 节内容排查,定位缺失位置后,安装字体。
FR 11.0 版本支持制作模板或导出、打印模板时对使用的字体进行检测,如果服务器缺少字体,将提示设计者或使用者完成对应字体的安装。
设计器缺失字体安装可参考:设计器导入字体
服务器缺失字体安装可参考:服务器安装字体
Web 浏览器所在的电脑缺失字体在「电脑本地系统>字体设置」中安装即可。
2. 缺失字体检测
设计器设计模板和导出、打印报表时会检测模板字体,包括单元格中使用的字体、富文本中使用的字体、页眉页脚使用的字体、图表中使用的字体,若服务器缺少此四处使用的字体,将提示用户安装。
设计模板时可通过点击「字体缺失检测」按钮检测。
导出、打印报表时,会主动检测并提示用户。
注1:使用此功能,建议用户将设计器和服务器版本都升级至 11.0 。若设计器版本不符合,则设计器端没有检测按钮,但导出或打印时会检测提示;若服务器版本不符合,会提示用户升级版本。
注2:集群下的检测仅检查单节点的字体情况,若检测出无字体后用户需要在所有节点安装缺失的字体。
注3:悬浮元素不进行缺失字体检测。
2.1 制作模板时检测
设计器编辑界面增加了「字体缺失检测」按钮,点击可对字体进行检测。如下图所示:
用户制作好模板后,点击「字体缺失检测」按钮,即可检测模板字体。
检测结束后,如果检测到模板中使用的字体在服务器中均包含,则弹窗提示:检测成功,服务器支持此模板中的所有字体。如下图所示:
如果模板使用了服务器不包含的字体,将弹窗提示:检测到模板使用了服务器不支持的字体,导出打印效果与预览会存在差异,建议你更换字体或在服务器安装字体。如下图所示:
点击「查看详情」即可查看缺失的字体,如下图所示,显示缺失宋体。
若检测出缺失字体,用户可替换缺失的字体为其他字体,或点击「服务器安装字体」超链接,参考帮助文档安装缺失字体。
2.2 导出打印时提示
服务器缺失字体会让预览效果和导出、打印的效果不同,FR 11.0 版本在工具栏导出或打印时会进行字体检测,提醒用户有字体缺失。如下图所示:
若存在字体缺失,弹窗提示:存在服务器不支持的字体,导出效果与预览会存在差异,是否继续导出/打印?
点击「查看详情」即可查看缺失的字体。如下图所示:
注:仅导出 PDF、Word、图片才会有提示,Excel 无提示。
若用户可修改模板,则修改模板替换缺失的字体为其他字体;若用户不能修改模板,联系超级管理员修改模板或安装缺失的字体。
若不修改或不安装,导出或打印后,缺失的字体将显示为系统默认的字体。
2.3 关闭提示功能
导出或打印时检测字体的功能默认是开启的,若用户不想使用关闭即可。如下图所示:
超级管理员登录数据决策系统,在「管理系统>系统管理>常规>字体缺失」处,关闭「字体缺失检测」按钮即可。
关闭后打印导出时将不再进行字体检测及提示。