【问题标题】:how Font and text rendering is done in different OSes如何在不同的操作系统中完成字体和文本渲染
【发布时间】:2013-05-24 02:52:27
【问题描述】:

在linux、bsd、windows中字体渲染是如何完成的?它们有何不同?

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

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

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

【问题讨论】:

  • 很确定这里不适合提出这样的问题。

标签: text fonts rendering


【解决方案1】:

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

几年前在这里发布了一个摘要 http://behdad.org/text/

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-07-31
    • 1970-01-01
    • 2016-04-17
    • 2013-06-02
    • 2011-06-21
    • 2011-07-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多