Re[8]: Проблема перерисовок .....
От: SergH Россия  
Дата: 04.08.02 12:56
Оценка: 3 (1)
Здравствуйте Garvold, Вы писали:

G>Спасибо огроменное !!!! Вроде всё заработало как надо...




G>Последний вопрос:

G> Когда я увеличиваю изображение, текст, в процессе увеличения, жутко искажается (буквы становятся какими-то кривыми и некрасивыми)

Увеличиваю это StretchBlt? Тогда ничего не поделаешь, красиво будет (теоретически, я не пробовал) только при увиличении в целое количество раз.

Есть два альтернативных варианта:

1. Увиличивать размер шрифта и отрисовывать заново. Если шрифт TrueType, наверное получится неплохо.

2. Использовать метофайлы. Я с ними работал совсем чить-чуть, поэтому незнаю, насколько хорошо будет увиличиваться текст. Зато знаю, что метафайл с битмапами плохо поддаётся масштабированию (знаю — сильно сказано. В моём единсвенном эксперементе под XP система отказалась изменять размер метафайла с битмапом. Причём не просто отказалась, а ругнулась как-то.). Но попробовать стоит.

Метафайлы, конечно, рисуются медленнее чем BitBlt. Но, если тебе нужно часто изменять размер можно совместить эти два подхода. Т.е. из метафайла в memory DC, из него BitBlt на экран.

В MSDN искать по CreateEnhMetaFile. Есть ли MFC-реализация не знаю, но с API MFC уживается без проблем. Использовать обычные (не Enhanced) метафайлы не имеет смысла, т.к. они хуже.
Делай что должно, и будь что будет
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.