2016-01-28 51 views
1

我正在使用UNICODE指令进行编译,所以所有CStrings都使用Unicode编码。如果将“봉재”放入CString中,选择带有“Arial”的字体,然后使用TextOut或TextOutW显示该文本,则会显示两个框。如何正确使用TextOut显示韩文文字?

如果我在文本中添加拉丁字符,例如“ABC”,然后显示变成两个框,然后是“ABC”。

但是,如果我在文本中添加了某些其他CJKV字符,例如“봉재/元”,然后显示器显示我CString的文本。

我猜TextOut检查文本,如果找到某些字符,它将替换字体以获得最佳显示效果。如果我的理论是正确的,那么通过向字符串添加某些东方字符,我可以强制TextOut替换Unicode字体,但是如果我添加其他东方字符,TextOut不会替换正确的字体,并且显示不足。

如何让TextOut始终替换正确的字体,或以其他方式一致显示文本?

+0

技术问题:“东方”和“欧洲”字母不是东西。如果我们谈论的是Unicode,那么CJKV(中文,日文,韩文和越南文)就是“使用Unicode调用表意字形的语言”的一个流行语,而且还有拉丁语(相当多的块)。如果您的问题使用韩语,请询问韩语。这就是说:显示代码。如果没有一个能够证明你正在尝试的最简单的例子,人们就必须猜测,并且由于他们的时间也很有价值,他们可能会转向一个不需要猜测的问题。 –

回答

1

请注意,“Arial”完全不支持CJKV,它只是一种拉丁字体。如果您希望在保持Arial字体外观的同时支持更宽的Unicode,请使用“Arial Unicode”。否则,请使用另一种字体,首先检查它是否包含您需要渲染的所有字形。

相关问题