假设你有两个或多个脚本的文本字符串。当您使用GDI函数像TextOut,(现代版),Windows将做“字形联”。也就是说,GDI将利用它可以与你选择的字体,并在它自动地选择合适的字体绘制休息。例如,如果你的文本的一部分是英文(使用罗马字母),以及它的一部分是中国人(使用CJK字符),你有宋体选择,英文部分将用Arial字体绘制,而中国部分将在具有CJK字形另一种字体绘制。

我的问题是,是否有一种方法来确定哪些字体TextOut将选择(或没有选择)的字体链接?

我有画一些文本与所述低级别的Uniscribe API,它不执行自动字体联。我实现了我自己的字体,链接,但有时我的算法选择不同的字体比TextOut确实为同一文本。我想了解Windows算法更好,但我不是在识别字体的视线(尤其是在不熟悉的脚本)真正的好。

有帮助吗?

解决方案

字体由一个注册表项选择。它是在本文充分描述引用的相关部分:

  

如果字体链接是上启用   设备,可以检查注册表   通过枚举的子键   在注册表项   HKEY_LOCAL_MACHINE \ SOFTWARE \微软\窗户   NT \ CURRENTVERSION \ FontLink \ SystemLink   确定链接的映射   字体到基本字体。您可以添加链接   使用Regedit创建附加   子项。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top