Fonts 什么';渲染复杂字体的最佳选项是什么?

Fonts 什么';渲染复杂字体的最佳选项是什么?,fonts,rendering,arabic,persian,Fonts,Rendering,Arabic,Persian,我正在开发一个游戏(使用Ruby),并计划用几种语言提供它。我想知道渲染文本的最佳选项是什么。特别是,无论我使用什么,都应该能够呈现复杂的字体(尤其是阿拉伯语和波斯语) 我环顾四周,偶然发现了freetype、graphite和使用windows本机api函数(我很高兴它不是跨平台的)等等。我应该选择什么?不同的取舍是什么?请访问www.freetype.org 它处理非从左到右的字体。 它会为您生成图示符,但您必须将它们渲染到设备(OpenGL/DirectX等)。请访问www.freetyp

我正在开发一个游戏(使用Ruby),并计划用几种语言提供它。我想知道渲染文本的最佳选项是什么。特别是,无论我使用什么,都应该能够呈现复杂的字体(尤其是阿拉伯语和波斯语)

我环顾四周,偶然发现了freetype、graphite和使用windows本机api函数(我很高兴它不是跨平台的)等等。我应该选择什么?不同的取舍是什么?

请访问www.freetype.org 它处理非从左到右的字体。 它会为您生成图示符,但您必须将它们渲染到设备(OpenGL/DirectX等)。

请访问www.freetype.org 它处理非从左到右的字体。
它为您生成字形,但您必须将其渲染到设备(OpenGL/DirectX等)。

如果您正在寻找将字体光栅化为位图的方法,Freetype和Windows API都能很好地处理此问题


如果您正在寻找一种在屏幕上绘制文本的方法,可以使用Window的原生API;双向文本和重音符号以及所有这些东西要想正确处理是非常困难和耗时的,所以理想情况下您需要一个API来为您处理它。这是否适用于您的游戏取决于您使用的图形API,您没有指定


编辑:要光栅化整个文本字符串,您需要使用win32的DrawText,这意味着您需要动手操作。

如果您正在寻找将字体光栅化为位图的方法,Freetype和Windows API都能很好地处理此问题


如果您正在寻找一种在屏幕上绘制文本的方法,可以使用Window的原生API;双向文本和重音符号以及所有这些东西要想正确处理是非常困难和耗时的,所以理想情况下您需要一个API来为您处理它。这是否适用于您的游戏取决于您使用的图形API,您没有指定


编辑:要栅格化整个文本字符串,您需要使用win32的DrawText,这意味着您需要动手。

对于跨平台解决方案,请签出。

对于跨平台解决方案,请签出。

是否有任何API可以简单地将所需语言的字符串渲染为位图(因为它将被渲染到屏幕上)我只是简单地将它渲染到屏幕上?我在DirectX上使用一个抽象API,我只有drawPixel和drawImage例程。Windows API非常容易。有没有API可以简单地将所需语言的字符串渲染到位图(因为它将被渲染到屏幕上)我在DirectX上使用了一个抽象API,我只有drawPixel和drawImage例程。Windows API很容易做到这一点