Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Вниз

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

 
z0ne   (2002-12-15 16:35) [0]

ситуация такая:

Есть штифт например с шириной (lfWidth) = 30, для него ф-ция GetTextWidth32 возвращает cx = 30. Теперь применяем коэфициент, например, 0.533111 -> получаем lfWidth=16, a Get...Width32 возвращает 17.

А вообще вопрос такой: Как работать (получить) не целые размеры шрифта.


 
z0ne   (2002-12-18 09:17) [1]

Ну поможете же кто-нибудь ....


 
Слесарь Матерящийся   (2002-12-18 10:27) [2]

>не целые размеры шрифта

Можно так: создать объект HFONT для ttf-фонта (CreateFontIndirect()), высотой, скажем, 1000 ед.;
затем извлечь из него графику (GetGlyphOutline()), отнормировать по высоте (==1) (ваш код, но тут не без подводных камней - с высотой);
далее выводить в своём масштабе (float) повекторно или выполнив растеризацию (тоже ваш код).

Так что вопрос лишь в том, нужно ли это.


 
z0ne   (2002-12-18 14:27) [3]

а код, хотябы примерный, можно ???
можно в мыло/

По памяти .. что-то у меня при борьбе с GetGlyphOutline() не получалось.
Да ... нужно получить ВЕКТОРНОЕ представление шрифта
------------
Pleeeeas


 
Слесарь Матерящийся   (2002-12-18 15:25) [4]

>а код...можно ???

Можно. Но за $$$ :)

>при борьбе с GetGlyphOutline() не получалось

Изучите документацию MSDN, статьи Q243285 и Q87115.

Ещё был пример Q113262, не знаю, выкинули его или нет.
Там есть разбор глифов и вывод изображений литер в окошко.
Весь код в Сях.
Если не найдёте, могу скинуть на мыло.


 
Слесарь Матерящийся   (2002-12-18 16:00) [5]

Опс! я всё-таки нашёл последнюю статью (Q113262):

http://support.microsoft.com/default.aspx?scid=KB;en-us;q113262

Удачи!


 
z0ne   (2002-12-19 10:55) [6]

спасибо !!! буду разбираться ....
Хотя, наверное, получение векторов через GetPath не сильно далеко в сторону от Вашего пути.

Всё-равно придётся столкнуться с проблемами округления при масштабировании. Но всё-равно спасибо



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

Форум: "WinAPI";
Текущий архив: 2003.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.01 c
14-5240
Alibaba
2003-01-16 14:03
2003.02.03
Web App Debugger


1-5013
bor
2003-01-23 16:07
2003.02.03
Термины


1-4967
cranium
2003-01-18 03:03
2003.02.03
Как дочерню форму показать поверх остальных дочерних форм


8-5081
brestmarket
2002-10-18 02:59
2003.02.03
Как на Button нарисовать свою картинку и проиграть звук?


1-5034
GrEG
2003-01-22 12:36
2003.02.03
COM/DCOM





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский