Разве нельзя вставить китайские иероглифы в текстовое поле формы Windows? - PullRequest
5 голосов
/ 13 апреля 2011

Я работаю над приложением WinForm и у меня есть текстовое поле, в которое я вставляю тексты из Google Translator. Я получил положительные результаты с несколькими языками Sematic и Indo, но китайские иероглифы отображаются в виде прямоугольников.

Есть ли способ преодолеть это?

1 Ответ

4 голосов
/ 23 апреля 2011

Вы должны использовать соответствующий шрифт Unicode, который поддерживает кодировки CJK. Лучшим является «Arial Unicode MS», но он может отсутствовать на ОС раньше, чем Vista без установленного MS Office. В этом случае вы можете использовать другой шрифт, например "NSimSun".

string arialUnicodeFontFace = "Arial Unicode MS";
Font unicodeFont = new Font(arialUnicodeFontFace, fontSize);
if (unicodeFont.Name != arialUnicodeFontFace)
    unicodeFont = new Font("NSimSun", fontSize);

yourTextBox.Font = unicodeFont;

Вы также можете посмотреть список всех поддерживаемых шрифтов CJK в разных версиях Windows: http://en.wikipedia.org/wiki/List_of_CJK_fonts

...