0
我想在MFC视图类中显示一个简单的Unicode字符串。这个问题可以被简化为以下代码在MFC中显示阿拉伯语/ Unicode查看
CString arabic (_T("مرحبا العالم"));
pDC->TextOutW (50, 50, arabic);
的问题是,所述MFC窗口显示在下面的屏幕截图显示条代替阿拉伯字符。有人能说出我做错了什么吗?
我使用VS 2003,如果该事项。
编辑:当我在设备上下文中选择了一个字体对象时,应用程序的行为发生了变化,但仍然不正确;它如果我使用了错误的代码页显示以下文字:
是的,字体似乎失踪,但现在看来,有一些问题的代码页;请参阅问题的编辑部分。这很奇怪,因为我使用Unicode,代码页应该是不相关的。 – Jaywalker 2012-01-05 16:51:13
你用UNICODE定义编译你的项目吗?如果没有,您至少必须使用MBCS进行编译,否则您的应用程序无法正确处理这种Unicode字符,无论您使用哪种代码页 – Stefan 2012-01-05 20:00:29
好。通过保存包含具有签名的UTF-8编码的字符串文字的.cpp文件可以解决这个问题。我一直使用的另一个选项,没有签名的UTF-8,没有工作! – Jaywalker 2012-01-06 10:16:10