我正在尝试编写一些使用 freetype2 来呈现一些文本的软件。
然而,我目前开发的条件使得在我的程序中提供 ttf 字体真的很困难。我陷入了死胡同,但后来我看到 freetype2 为我们提供了一个FT_New_Memory_Face函数,它可以从内存中加载一张新面孔。
freetype2 的文档指出我必须打开一个文件,并将其内容加载到内存中的某个位置才能使用它。但同样,这并不能解决我的问题。是否有可能拥有像静态缓冲区这样的东西来保存 ttf 文件的数据,并且我可以将其传递给 FT_New_Memory_Face?我正在考虑类似于 GIMP 将图像导出为 C 源代码的方式。
我找到了'font2c',它声称可以这样做(??),但每当我尝试加载我的 TTF 字体文件时,我都会收到如下错误:
$ font2c 宋体 arial.c 转换 Arial 字体。 字体名称是 /Arial。 错误:/invalidfileaccess in --file-- 操作数栈: --nostringval-- cfile (arial.c) (w) 执行栈: %interp_exit .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- --nostringval-- false 1 %stopped_push 1910 1 3 %oparray_pop 1909 1 3 % oparray_pop 1893 1 3 %oparray_pop 1787 1 3 %oparray_pop --nostringval-- %errorexec_pop .runexec2 --nostringval-- --nostringval-- --nostringval-- 2 %stopped_push --nostringval-- --nostringval-- -- nostringval---nostringval-- 字典栈: --dict:1166/1684(G)-- --dict:0/20(G)-- --dict:84/200(L)-- --dict:52/100(L)-- 当前分配模式是本地的 当前文件位置是 20084 GPL Ghostscript 9.06:不可恢复的错误,退出代码 1
我能做些什么????提前致谢!
PS。抱歉英语不好,我不是母语人士