当我仅有的信息是字体的“ postscript”名称时,我试图获取字体文件名。 (强调:字体名称是脚本,而不是字体)。
例如,我有以下后记名称:TimesNewRomanPSMT。
保存在注册表中的真实名称是:Times New Roman(TrueType)。
有没有办法从给定的附言名称中获取该名称?

我在这里看到了类似的帖子,没有被保留:
C# get font from postscript name

我正在用C ++编写代码,因此我不受编码语言的限制。
目前,我正在为Windows编写此代码,但它应该兼容,或者至少具有针对MacOS的备用代码

最佳答案

我有C ++代码从检查标题的给定fontfile中获取字体名...但是对于我测试过的某些字体却失败了(例如,可以工作90%)。我认为最简单的方法是使用十六进制编辑器打开字体文件并在其中搜索字体名称。如果您担心注册表,则可以重新注册字体名称,如下例所示:

reg添加“ HKLM \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Fonts” / v“ Arial Bold” / t REG_SZ / d arialbd.ttf

09-10 00:21
查看更多