| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Системное программирование и WinAPI > Как менять "прозрачность" изображения. |
| Автор: devmstr 7.4.2005, 12:08 |
| Как менять "прозрачность" изображения. |
| Автор: chipset 8.4.2005, 09:18 |
| magician, а поподробнее? |
| Автор: MoZy 10.8.2006, 18:33 | ||
| devmstr, пиши функцию вывода изображения. Тебе понадобятся: Контекст1 того, куда выводиться будет твоя картинка Сама картинка. Помещаешь ее в контекст2 Копируешь кусок контекста1 размером с твою картинку в контекст3 Затем делаешь так:
v1.4 |
| Автор: GremlinProg 10.8.2006, 19:47 |
| AlphaBlend работает быстрее, я проверял, тем более, если нужно просто выставить коэффициент прозрачности, SetDIBits... не сравнится |
| Автор: devmstr 11.8.2006, 15:42 |
| Фигасебе, теме мою нашли. Я тот проект еще тогда успешно закончил, но извените, как-то тогда не отписался, да и кнопки - Вопрос решен, тогда еще не было. Делал как я помню, через AlphaBlend. MoZy Все равно большое спасибо за желаение помочь! |
| Автор: MoZy 20.8.2006, 19:15 |
| devmstr, да пожалуйста. Только где этот AlphaBlend взять |
| Автор: GremlinProg 20.8.2006, 19:34 |
| Как это нет? Requirements Windows NT/2000/XP: Included in Windows 2000 and later. Windows 95/98/Me: Included in Windows 98 and later. Header: Declared in Wingdi.h; include Windows.h. Library: Included as a resource in Msimg32.dll. |
| Автор: MoZy 20.8.2006, 19:40 |
| GremlinProg, значит справка у меня старая Может напишешь прототип? и сразу кусок кода как юзать |
| Автор: GremlinProg 20.8.2006, 19:52 | ||||
Прототип лежит в wingdi.h, подключается автоматически с подключением windows.h
Единственное, что здесь нужно прокомментировать(остальное как в StretchBlt), так это последний параметр blendFunction. Это структура, содержащая сами параметры бленда:
BlendOp = AC_SRC_OVER BlendFlags = 0 SourceConstantAlpha - коэффициент прозрачности, только не [от 0 до 1], а [от 0 до 255] AlphaFormat = обычно ставится 0, но возможно использовать и с AC_SRC_ALPHA |
| Автор: MoZy 20.8.2006, 20:03 |
| GremlinProg, спасибо! я там еще кое-че нашел |