【发布时间】:2011-11-01 13:29:44
【问题描述】:
在 Windows 中,如果请求的字体未被请求,CreateFontIndirect() 调用可以静默替换兼容字体。 GetObject() 调用不反映这种替换;它返回相同的LOGFONT 传入。我怎样才能找到实际创建的字体?或者,如何强制 Windows 只返回请求的确切字体?
【问题讨论】:
-
这种控制需要使用Uniscribe API。
-
@Hans,不幸的是,这在一些相当多毛的遗留代码的中间。重构它以使用 Uniscribe 将是一项……艰巨的任务,缺乏测试和文档至少没有帮助。如果有一些无证 GDI 调用从 HFONT 获取此类信息,那总比没有好:)