JEP 258:HarfBuzz 字体布局引擎
概述
用 HarfBuzz 替换现有的 ICU OpenType 字体布局引擎。
动机
ICU OpenType 布局引擎已经不再积极开发,项目所有者 IBM 打算在 ICU 项目 中用 HarfBuzz 取代它。JDK 必须跟进这一变化,否则将面临使用不受支持且过时的库的风险。
描述
以与 JDK 中的 ICU 和其他开源库(例如 libpng
)相同的方式,将 HarfBuzz 库的一个副本整合到 JDK 中。集成该原生库以支持 Java API 和实现复杂文本布局所需的实现,作为 ICU 的替代方案。
替代方案
目前没有可行的 HarfBuzz 开源替代品。像 Pango 这样的库现在正被重新实现为围绕 HarfBuzz 的封装器。
风险与假设
由于不同的实现方式以及使用了更新的 OpenType 规范,这些库之间可能会存在一些细微的渲染差异。