Linux 环境下思源黑体字体与 Java 之间的兼容性问题的解决
2015-09-15 14:27
1991 查看
从 Fedora 22 开始,系统自带思源黑体(Source Han Sans),不再使用文泉驿正黑或微米黑(但仍然可以通过 dnf 在线安装)。思源黑体采用 OTF 字体格式(Open Type Font),技术上是 TrueType 字体的更为先进的升级版。但经过反复测试发现,Java 对 OTF 字体的支持似乎存在问题。尽管 Oracle 官方文档上说从 Java 7 开始已经能够支持 OTF 字体,比如 createFont 等方法仍然可以用 TRUETYPE_FONT 等参数提供对 OTF 字体的支持,但思源黑体在 Java 程序中显示汉字会出现方块,特别是简体中文语言环境下,字体看似使用的思源黑体台湾香港地区繁体版本,并没有使用简体中文版本,一些字显示不出来,以方块代替了。在没有多余精力去研究字体问题的情况下,目前猜测是因为思源字体以 OTF 格式发布并且内部还存在 Hinting 信息的问题导致 Java 识别存在问题,另外字体的语言编码可能也是个问题。暂时的替代方法是,最好使用不带 Hinting 信息的 TTF 字体,比如 XHei、明兰等社区制作的字体(不含 Hinting 信息),另外建议删除思源黑体软件包安装时自带的 fontconfig 配置,然后直接修改 fontconfig 中的 65-nonlatin.conf 等文件,自定义你所使用的替代字体的匹配优先级等等。
相关文章推荐
- linux下使用ramdisk的一点认识
- centos7下使用yum安装mysql
- Linux鸟哥私房菜学习笔记--第九章
- Linux 下安装ffmpeg(xlib264 yams)
- Linux 下ffmpeg的安装(xlib264 yams)
- CentOS 安装python MySQLdb模块
- 左右GNU Linux企业加密文件系统 eCryptfs简介
- linux挂载光盘
- unix/linux共享内存应用与陷阱
- linux下彻底卸载MySQL
- 马哥-51CTO-Linux培训-0905-Linux任务计划
- window程序移植到linux(二)
- 学习重新编译Linux内核
- Linux环境下,traceroute返回一系列*原因分析
- CentOS6.5手动升级gcc4.8.2
- 马哥linux学习(linux上的包管理)
- linux下weblogic 12c 节点管理器配置
- linux 英文帮助学习PWD
- centos6 yum 安装 install c++4.8 gcc4.8
- crontab(linux下定时执行任务命令)