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