有没有人有什么建议,可以让我找到关于如何围绕CFF字体创建opentype包装器的额外信息?
目前我有一个CFF文件的解析器,所以我可以从中获得各种信息(cmap,字形名称,宽度,名称等)。有了这些信息,我无法创建Opentype (truetype format )包装器,所以我可以使用GDI在Windows上使用字体;GDI不会加载Opentype字体,我唯一知道的是它无法加载字体。
有没有人知道任何额外的信息,验证应用程序,示例代码,获取为什么字体不能从Windows加载的额外信息等?
注意:我正在寻找如何做到这一点的信息,而不是实用程序和/或转换工具。
发布于 2012-05-15 15:30:06
到现在为止,我有3个库作为参考:
fontforge FreeType:主要在cff包中,主要条目是cff\cffload.c,现在在github
中,仍然在FreeType中,在sf.net
在parsettf.c中,George Williams写道: True Type是一种非常讨厌的格式。...now,我更好地理解它,它看起来设计得更好,但文档仍然存在冲突。有时情况很糟糕。
国际海事组织,cff文件同样糟糕。也许它设计得更好。只是可能,如果我有时间:)我会确认可能。为什么?看看那些东西的创建时间,太老了。
哪种情况只有在年龄较大时才更好?家长,数学和丝智学:)任何其他人必须更新!
发布于 2016-08-30 10:26:04
CFF(压缩字体格式)主要用于在PostScript文件中嵌入PDF字体。您还可以在基于PostScript轮廓的OpenType字体文件中找到CFF。
如果您从PDF的嵌入式字体文件中获取CFF,则可以从CFF的NameIndex中获取PostScript名称。您应该可以通过PostScript名称找到相应的OpenType文件。
如果你从一个OpenType文件中得到了CFF,你为什么要问这个问题?:-D
发布于 2012-01-12 01:53:33
我引用这个链接:Raster, Vector, TrueType, and OpenType Fonts
...字体的字形存储在字体资源文件中。..。
因此,Windows从它能理解的格式的文件中加载字形,而不是CFF文件,也不是从内存中加载结构。如果你想在不使用文件转换工具的情况下绘制CFF文件,我认为你将需要加载CFF并自己绘制字形。
要加载CFF并确定字形,可以使用FreeType Project。这里有一个链接,解释了如何从FreeType源文件构建Win32动态链接库:Compiling FreeType to DLL (as opposed to static library)
要绘制字形,您可以从gdipp project获得一些灵感,它是Windows文本渲染器的替代品,包含显示从FreeType加载的字形的Win32 C/C++示例代码。
https://stackoverflow.com/questions/8779107
复制相似问题