Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

помогите со шрифтами [D7, Win2k]


nika_ufc ©   (2004-09-10 21:00:00) 

Господа приветствую.
думаю мне для этого нужен апи, но ...
С помощью какой функций можно выяснить, в шрифте на каком месте находиться определений символ, то есть какой шестнадцатиричный код ему соответствует ? короче как это "Character Map" делает ?


nika_ufc   (2004-09-28 23:31:00) [1]

>>>vertal ©
А как это выяснить для ANSI ?


vertal   (2004-09-12 01:21:00) [2]

В файлах TrueType шрифтов есть таблица 'cmap' , в которой для Windows должны быть записаны соответствия между определенными диапазонами Unicode символов и порядковыми номерами глифов шрифта. Если там нет какого-то Unicоde-символа , то это значит , что шрифт его не поддерживает. Вам понадобятся функции CreateDC ,
CreateFont,SelectObject , GetFontDataи спецификация формата файлов шрифтов True Type.


Burmistroff   (2004-09-11 22:25:00) [3]

>Sergey Kaminski
Не-а. "квадратики" он рисует как раз если у него такого символа нет. Китайский фонт весит 16 метров. "обычный" урезанный английский - 30 кб => в нем далеко не все буквы


Sergey Kaminski   (2004-09-11 06:43:00) [4]


Мне нужно выяснить какой то определений фонт поддерживает ли какой то определений символ


Э... это как - поддерживает? Фонт, он все поддерживает.
А кракозябры рисует вовсе не потому, что он "не поддерживает", а просто потому, что у него там кракозябра и есть.


nika_ufc   (2004-09-11 02:58:00) [5]

>>> Kind   (10.09.04 22:13) [1]  
>>> Davinchi ©   (10.09.04 22:38) [2]  
>>> GuAV ©   (11.09.04 01:59) [3]
 нет, вы неправильно поняли меня. Мне нужно выяснить какой то определений фонт поддерживает ли какой то определений символ ?


GuAV   (2004-09-11 01:59:00) [6]

А пофиг, ASCII, ANSI или юникод. Ord работает. Только чтобы

> шестнадцатиричный
ещё надо IntToHex


Davinchi   (2004-09-10 22:38:00) [7]

Если енто ASCII, то попробуй использовать
NumChar:=Ord(C: Char);


Kind   (2004-09-10 22:13:00) [8]

Разговор про ASCII или пардон ...


Наверх

Титульная страница Поиск, карта сайта Написать письмо