gpt4 book ai didi

sublimetext - Sublime Text 正在使用什么用于文本输出的底层图形库?

转载 作者:行者123 更新时间:2023-12-04 12:41:22 27 4
gpt4 key购买 nike

我注意到 Sublime Text 对某些字体和大小的渲染比基于 Scintilla 的编辑器要好得多。这是如何实现的?它下面有一些著名的文本渲染器还是他们自己开发的?

最佳答案

Sublime Text 在特定于平台的库上使用高度调整的设置来呈现文本。多年来,它实际上使用了几个不同的库。我找不到任何关于 OSX 的细节,但在论坛和发行说明中有一些关于 Windows/Linux 的细节。

在 ST3 版本 3034 中,它是 noted图形渲染引擎是“从开罗移植到 Skia”的。但是,不清楚是否进行了自定义文本渲染,或者是否仅用于 UI 元素。

Sublime Text 1

我找不到版本 1 的良好引用,但通过论坛对话的点点滴滴,它看起来可能是在 OpenGL 之上编写的自定义渲染引擎。其他论坛帖子指出,所有 future 的渲染都将是纯软件的,因为 GPU 渲染会导致很多跨平台问题。

我能找到的最佳报价 was this :

Sublime Text 2 uses software rendering only. Ultimately, it caused too many compatibility issues in 1.x, and with going cross platform for version 2, that would only have increased. Nonetheless, I'll talk about Sublime Text 1.x for a bit.

The basic text rendering itself was fairly standard: textured quads are drawn to the screen, one per character. However, there are a few details worth noting:
* Characters are buffered, and sorted by color, to reduce state changes.
* Most OpenGL applications will have a single channel texture for the characters, and blend the desired color on top. Sublime Text uses RGB textures, with the text pre-composed with the correct foreground and background color. This takes more memory, but allows ClearType to be used, which is important for a text editor.



Sublime Text 2 (release notes)

Windows 使用 GDI,在 build 2081 中添加了一个选项以使用 DirectWrite。

在构建 2170 中,Pango 被添加为 Linux 上的渲染以改进对 cjk text 的支持。 .

Sublime Text 3 (release notes)

DirectWrite 在 build 3127 中取代 GDI 作为 Windows 上的默认渲染器,除非您使用字体 Consolas 或 Courier New。 GDI 保留为 a rendering option in the settings .

关于sublimetext - Sublime Text 正在使用什么用于文本输出的底层图形库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20878651/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com