Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.11.21;
Скачать: CL | DM;

Вниз

Замена шрифтов   Найти похожие ветки 

 
Garfunkel   (2004-11-03 01:44) [0]

Вот я установил Font моей Label как Impact. А теперь думаю - а что если такого шрифта на машине пользователя не будет? На что его поменяет система?


 
TechnoDreamer   (2004-11-03 02:01) [1]

Заменит наиболее похожим. Можно шрифт встроить в прогу:
1. Делаете *.RC файл, содержащий ссылку на соотв. файл шрифта.
2. Компилируете ресурс с помощью BRCC32
3. Вставляете ресурс в свою программу с помощью директивы {$R ..}
4. Когда шрифт понадобится (например, при старте программы), извлекаете его из ресурса и записываете в файл на HD с помощью TRersourceStream. Перед этим, на всякий случай проверьте с помощью EnumFontFamilies, вдруг Ваш шрифт ужде в системе есть.
5. Делаете ресурс доступным для Windows с помощью AddFontResource( ваш_файл ) + бродкастом рассылаете WM_FONTCHANGE
6. Пользуетесь этим шрифтом так же, как и любым другим.
7. Когда нужда в шрифте отпадает (например, при завершении работы), делаете RemoveFontResource + WM_FONTCHANGE и удаляете файл с HD. А если хотите, можно и не удалять, а оставить в системе (тогда файл копировать лучше в Windows\Fonts, предварительно убедившись, что у Вас есть на это право.

Плюс еще можно почитать об этом здесь: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/gdi/fontext_7qb8.asp

З.Ы. Инфу я взял когда то с ответ Kid_Deceiver, с форума iXBT.


 
Garfunkel   (2004-11-04 01:50) [2]

Спасибо за дельный ответ. "Похожий" шрифт это я так понимаю - с засечками и без засечек (serif/sans-serif)? А вот я хочу подобрать fixed font (моноширинный) чтобы на любой системе он был (ну на 99%). Думаю Courier New везде есть, не так ли?



Страницы: 1 вся ветка

Текущий архив: 2004.11.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.039 c
1-1099547598
InfMag
2004-11-04 08:53
2004.11.21
Запоритсая проблема с конвертом TColor а


1-1099671777
nick123
2004-11-05 19:22
2004.11.21
Передача указатель


1-1099980477
leonidus
2004-11-09 09:07
2004.11.21
Как распарсить swf?


14-1099488222
John
2004-11-03 16:23
2004.11.21
Помогите решить задачу


1-1099473927
Leaner
2004-11-03 12:25
2004.11.21
Уничтожение компонента в Run Time.