Как красиво отресайзить картинку
От: bog  
Дата: 17.10.01 14:43
Оценка:
Как красиво изменить размер картинки. Использую StretchBlt — уменьшая пропорционально её размер вдвое — появляются артефакты. Плиз Хелп!!!!
Re: Как красиво отресайзить картинку
От: ZORK Россия www.zorkaltsev.com
Дата: 17.10.01 18:18
Оценка:
Здравствуйте bog, Вы писали:

bog>Как красиво изменить размер картинки. Использую StretchBlt — уменьшая пропорционально её размер вдвое — появляются артефакты. Плиз Хелп!!!!


Используй stretch из DirectDraw — там много разных опций.
Думать надо ...головой :)
Re[2]: Как красиво отресайзить картинку
От: os77  
Дата: 17.10.01 18:32
Оценка:
>уменьшая пропорционально её размер вдвое — появляются артефакты
Так сложно сложить четыре точки и получить одну?

>Используй stretch из DirectDraw — там много разных опций.

Через DirectDraw не получится – Direct3D, и то придётся делать mip-map’ы, так что складывать четыре точки всё равно надо :)))))
Re[3]: Как красиво отресайзить картинку
От: ZORK Россия www.zorkaltsev.com
Дата: 17.10.01 19:11
Оценка:
Здравствуйте os77, Вы писали:

>>уменьшая пропорционально её размер вдвое — появляются артефакты

O>Так сложно сложить четыре точки и получить одну?

>>Используй stretch из DirectDraw — там много разных опций.

O>Через DirectDraw не получится – Direct3D, и то придётся делать mip-map’ы, так что складывать четыре точки всё равно надо :)))))

Старнно это — делал я через DirectDraw: обяъвдяешь два surface'а нужны размеров и делаешь Blt, при этом в отличии от делания руками, может сработать аппаратная оптимизация — если есть. А вот при чем тут Direct3D вообще не понятно.

Ты уверен, что правильно понял начальный вопрос?
Думать надо ...головой :)
Re[4]: Как красиво отресайзить картинку
От: VladD2 Российская Империя www.nemerle.org
Дата: 17.10.01 20:03
Оценка:
Здравствуйте ZORK, Вы писали:

Direct3D — малось не уневирсально и с версиями геморой. В любом случае лучше подстраховаться... То ли на www.codeproject.com, то ли на www.codeguru.com есть пирмеры довольно качественных БитБилдов.
Есть логика намерений и логика обстоятельств, последняя всегда сильнее.
Re: Как красиво отресайзить картинку
От: Snax Россия  
Дата: 18.10.01 00:02
Оценка:
Здравствуйте bog, Вы писали:

bog>Как красиво изменить размер картинки. Использую StretchBlt — уменьшая пропорционально её размер вдвое — появляются артефакты. Плиз Хелп!!!!


а ::SetStretchBltMode(hDC, HALFTONE) ставишь? А то по умолчанию стоит BLACKONWHITE, совсем другая история.

Правда HALFTONE не реализован некоторыми архаичными превдо-ОС, но можно делать так:

if (false == ::SetStretchBltMode(hDCD, HALFTONE))
    ::SetStretchBltMode(hDCDest, COLORONCOLOR);
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.