我已阅读Rendering Vector Art on the GPU上的渲染形状,该形状由二次/三次贝塞尔曲线边界定义。我希望以此为基础来创建可以像用笔或画笔抚摸一样填充的文本。 (欢迎提供任何有关此操作的建议。)

但是,我不确定在哪里可以使用本文指定的格式的字体/形状(点数组代表二次/三次贝塞尔曲线)。

有谁知道一种获取这种格式的字体/ vector 图形的方法吗?该论文的作者提到了truetype字体,但是根据

TrueType Font Parsing in C

看起来解析truetype字体可能涉及的比这还多?我知道也有.svg之类的格式,但是我不确定从哪里开始,因为它所包含的内容远远超出了我想要的范围。

例如,是否存在某种类型的文件格式,我可以将.svg文件或truetype文件转换为此类文件,也许可以通过使用inkscape的导出功能来使生成的格式能够解析为点和控制点的数组?

我接受了以下答案,但对于对此感兴趣的任何人,您都应该查看

https://github.com/quarnster/TTF

这几乎正​​是我想要的。该代码很好用,但很难理解如何使用它。如果您阅读有关TTF格式的信息,例如An Introduction to TrueType Fonts: A look inside the TTF format,那将更有意义。

最佳答案

我建议使用跨平台库FreeType(http://www.freetype.org/)。 FreeType加载字体文件,并且除其他外,提供字体在字样中的边界曲线。具体来说,您应该查看函数FT_Outline_Decompose,该函数可以提供所需的确切信息。

10-01 12:07