这是一篇关于字体和文本渲染的综述论文,涵盖了 OpenType 标准、开源文本栈及应用的进展,以及未来的发展方向,具体内容如下:
- 许可证与发布信息:文本采用Creative Commons Attribution-ShareAlike License 4.0许可证,于 2024 年 7 月 8 日发布,后续会持续更新至 2024 年底并发布历史版本。
主要内容概述:
- 前言:2009 年撰写State of Text Rendering,之后在谷歌从事字体和文本渲染工作,此次更新涵盖过去 15 年的进展及未来展望。
- 先决条件:假设读者对文本渲染工作有高级理解,如排版等,推荐阅读相关文章。
- 介绍:计算机字体已有 50 多年历史,OpenType 字体成为数字文本的通用语言,2024 年的三大 OpenType 实现包括 Microsoft 的 DirectWrite、Apple 的 CoreText 和开源的 FreeType + HarfBuzz。
回顾过去:
- OpenType:2014 - 2016 年活动频繁,后趋于沉寂,支持了颜色字体、通用排版引擎、可变字体等新特性,各相关库也进行了相应更新。
三个库:
- FontTools:最初由 Just van Rossum 于 1999 年创建,后被作者 fork 并发展,支持多种字体格式和特性,是开源字体格式开发的实验平台。
- FreeType:由 David Turner 于 1990 年代开发的字体访问和光栅化库,得到 Adobe 等的贡献,是数十亿设备上的核心组件,但存在安全问题,渴望迁移到更现代的语言。
- HarfBuzz:用 C++编写的文本排版器,支持 OpenType 和 Apple Advanced Typography 排版模型,在多个平台和应用中广泛使用,性能和内存使用表现优秀,已被移植到 Rust 和 Go 等语言。
- 应用:综述了开源文本布局的应用,包括字体编译工具、字体光栅化器、排版引擎等的替代方案和现状。
展望未来:
- 更好设计的字体格式:提出三部分计划,包括渐进式字体格式改进(如 avar2、Cubic glyf 轮廓、可变组合/组件、超越 64k 等)、Rust 迁移与统一(如 fontc、skrifa、klippa、RustyBuzz 等)、完全可编程字体(如 HarfBuzz 的 Wasm 整形等)。
- 其他努力:如 Fontra 字体编辑器、增量字体传输(IFT)技术等。
- 分析:对开源字体和文本渲染生态系统进行 SWOT 分析,包括优势(市场份额、敏捷性等)、劣势(缺乏权威、标准化滞后等)、机会(更多应用参与)、威胁(谷歌资源减少等)。
- 其他资源:提供了作者的主页、相关论文、博客等资源列表。
- 致谢与作者信息:感谢多人对文章的审阅和讨论,介绍了作者 Behdad Esfahbod 的背景和兴趣。
- 版本历史:2024 年 7 月 8 日初始发布,后续会根据反馈进行改进,2025 年 2 月 12 日将 Google Docs 导出到自我托管。
总之,这篇论文全面回顾了字体和文本渲染领域的过去和未来,对该领域的发展具有重要的参考价值。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。