Re[4]: Объясните новичку про UNICODE
От: Misha87  
Дата: 24.10.05 07:26
Оценка:
Здравствуйте, aik, Вы писали:

aik>В шрифте заданы отображения для символом с кодами. Фонты — они сразу юникодные, по крайней мере, TrueType. Считай, что массив такой, индекс в массиве — это 2-байтовый код символа.

aik>Если ты выводишь ANSI: система видит байт, знает локаль, получает из байта юникодный символ, видит фонт и выковыривает из фонта по юникодному символу его отображение и рисует.

А>>>>7) Например, я написал в программе MessageBoxA("HelloWorld"). Эта Строка будет нормально отображаться под любыми виндами с любым языком? У китайцев будет? А если написал MessageBoxW("HelloWorld")??

aik>>>На латинице — будет, всегда. На китайском — тебе придется руками заделать константную строку в uft8, затем (если win9x) вызвать MessageBoxA, либо (в winnt) MultiByteStringToWideCharString(uft8->unicode) MessageBoxW. Или поместить строку в ресурс, там все строки в юникоде, только страну не перепутай, потому что RC скрипт — все равно ANSI и его надо корректно конвертить в unicode.
M>>Опять непонятно. Можно чуть-чуть псевдокода?

aik>Что именно непонятно то? Как строку в ресурс положить?


Так ведь неизвестно где будет программа запускаться. Все случаи на каждую сточку чтьоли разбирать?

И что значит "На латинице — будет, всегда. На китайском..." Я спрашивал именно про "HelloWorld". Она на английском. А что имеется ввиду "На китайском...."?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.