如何在Windows中为特定的unicode值提供特定字体作为默认值?

时间:2012-05-28 06:21:47

标签: c++ winapi unicode fonts

我正在使用c ++制作win32应用程序。使用默认字体时,系统会负责显示非英语符号,例如印地语中的字符。但是,对于某些特殊符号,例如印度卢比符号(₹),它只显示一个正方形(我认为这表示当前符号无法显示)。我已经安装了Rupakara字体,它能够显示符号 我想知道有什么方法可以提及如果符号来自货币Range,我希望使用Rupakara字体,否则使用默认的系统字体。因此,外观将是无论用户输入什么,他都会获得相同的正确符号。我知道我可以单独检查值是否在该范围内,但是我希望有一个API调用,将其设置为在此范围内使用此字体,因为我稍后可以使用它来设置不同范围的其他字体。登记/> 如果需要进一步的细节,请告诉我,或者是否有其他方法可以做同样的事情而不明确检查它所属的每个字符并设置相同的字体。
感谢

1 个答案:

答案 0 :(得分:0)

Microsoft Windows substitute fonts

您的选择是:

  1. 编辑您当前使用的字体并在此处合并此字符(例如,使用FontForge)。确保相关字体的许可证允许您这样做。
  2. 使用执行字体替换的文本呈现引擎。这意味着您将无法使用内置的Windows功能,例如默认文本框和文本呈现功能。