0

linux、bsd、windows中如何进行字体渲染?它们有何不同?

我不是在谈论浏览器网络字体渲染。比如说输入系统是如何工作的?我按鼠标键。它们触发 linux 内核的 evdev 驱动程序,内核管理更高级别的操作。

低级字体渲染机制。freetype、pango、窗口管理器如何相互交互。另一个大问题?unicode支持是怎么实现的??

简单地说,当我在文本编辑器中键入一个字符时,字符在进入屏幕之前的流动路径是什么。MS word 或 LibreOffice 如何在单个画布中一起呈现不同的字体?

4

1 回答 1

1

现在 *nix 上的文本渲染是在客户端完成的,这意味着应用程序使用他们最喜欢的任何库将 unicode 代码点转换为像素并将结果提供给 x。尽管过去几年人们一直在使用 fontconfig + freetype + freebidi + harfbuzz,但实际使用的库非常谨慎,通常通过 pango-cairo 访问

几年前在此处发布了摘要 http://behdad.org/text/

这是一个极其复杂的过程,如果您想了解所涉及的所有步骤,您需要数周的阅读时间。

于 2013-08-30T11:17:05.570 回答