Re[20]: Кроссплатформа - состояние на конец 2022
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 07.12.22 13:18
Оценка: 3 (1)
Здравствуйте, Sinclair, Вы писали:

M>>Это не в кеглях. У меня HDC MapMode в пикселях. И да, используется самый что ни на есть тупейший GDIшный TextOut. А кегли в пиксели пересчитать с учетом масштабирования даже третьекласник справится.

S>Дело не в третьекласснике. Дело в конкретных размерах. Пусть будет в пикселах — какие параметры использовались?

Было
        lf.lfOutPrecision    = OUT_OUTLINE_PRECIS;
        lf.lfClipPrecision   = CLIP_DEFAULT_PRECIS;
        lf.lfQuality         = ANTIALIASED_QUALITY;
        lf.lfPitchAndFamily  = DEFAULT_PITCH | FF_DONTCARE;

  Скрытый текст


Перечитал доку — оказалось, что ANTIALIASED_QUALITY работает только если глобальная настройка в системе включена


Поиграл, сделал
        lf.lfOutPrecision    = OUT_OUTLINE_PRECIS;
        lf.lfClipPrecision   = CLIP_DEFAULT_PRECIS;
        lf.lfQuality         = CLEARTYPE_QUALITY;
        lf.lfPitchAndFamily  = DEFAULT_PITCH | FF_DONTCARE;

  Скрытый текст


Стало поприятнее

S>Это, конечно, здорово, вот только размеры шрифта в десятки пикселов не очень интересны. Там более-менее любой растеризатор справится.

S>Попробуйте взять реалистичные размеры для чтения текста с экрана — ну, там, 6-7-8-9-10-11-12pt. И посмотрим, насколько линейно меняется ширина текста.

Размер шрифта у меня float, пересчитывается в пиксели по курсу какой укажу

Скачки есть, но фатального ничего не вижу
Померял у себя на экране — размер 4 — 56 мм, размер 2.047 (по двойку только) — 28 мм
Маньяк Робокряк колесит по городу
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.