[Юникод] показать символ, зная его код

 
0
 
Delphi, Kylix & Pascal
ava
Akella | 21.03.2013, 11:53
Вот есть таблица символов юникода
http://www.tamasoft.co.jp/en/general-info/unicode.html

К примеру, там есть знак возведения в степень "²" на пересечении колонки 12 и строки 00A0.
Внимание, вопрос!
Что написать в коде, какую функцию использовать, чтобы вывести на экран, например, в TEdit знак возведения в степень?

Delphi XE3
Kommentare (5)
ava
Чучмек | 21.03.2013, 15:35 #
Вообще должно быть

Edit1.Text:='2'#$B2;

Но delphi некорректно  подставляет символы по коду. Или я чего-то не знаю.

Edit1.Text:='2'+char($B2);
ava
Чучмек | 21.03.2013, 22:05 #
Ага понял.
#$B2 - ansi, a   #$00B2  - unicode.
Оказывается delphi делает разницу. Буду знать.
ava
Чучмек | 21.03.2013, 23:15 #
Цитата (Akella @  21.3.2013,  10:53 findReferencedText)
У меня есть знак возведения в степень в кодировке UTF-8 - это 0178, как я понял.



Akella, ты неправильно понял, и меня запутал.

В юникодной таблице  "двойка" в верхнем регистре имеет код 0178 ($00B2).
В UTF-8 символы с кодом $80-$7FFF кодируются двумя байтами.
Символ #$00B2 в UTF-8  - #194#178

Цитата (Akella @  21.3.2013,  10:53 findReferencedText)
как мне из UTF-8 перекодировать в unicod

Есть ряд функций начинающихся с UTF8

caption:=UTF8Decode('2'#194#178);

ava
Akella | 21.03.2013, 23:26 #
целый зоопарк с этими юникодами  smile 
ava
bems | 22.03.2013, 00:52 #
Цитата (Чучмек @  21.3.2013,  15:35 findReferencedText)
Но delphi некорректно  подставляет символы по коду. Или я чего-то не знаю.
действительно не знаешь. дельфи делает корректно, но в ansi. читай хелп к директиве компилятора $HIGHCHARUNICODE
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden