Прозрачность
Неужели надо делать сплайн для каждой точки картинки? Или есть какие другие способы?
Цитата:
Originally posted by AndreySar
Имеется две картинки x * y. Требуется осуществить плавный переход от одной картиники к другой.
Неужели надо делать сплайн для каждой точки картинки? Или есть какие другие способы?
Имеется две картинки x * y. Требуется осуществить плавный переход от одной картиники к другой.
Неужели надо делать сплайн для каждой точки картинки? Или есть какие другие способы?
Переводим картинку в 32-битный формат и затем накладываем с помощью AlphaBlend(), в которой можно указать альфу для всей картинки.
Цитата:
Originally posted by HarryAxe
Переводим картинку в 32-битный формат и затем накладываем с помощью AlphaBlend(), в которой можно указать альфу для всей картинки.
Переводим картинку в 32-битный формат и затем накладываем с помощью AlphaBlend(), в которой можно указать альфу для всей картинки.
Но для этого надо использовать GDI+, Win98 его вроде не поддерживает
Цитата:
Originally posted by AndreySar
Но для этого надо использовать GDI+, Win98 его вроде не поддерживает
Но для этого надо использовать GDI+, Win98 его вроде не поддерживает
AlphaBlend(...)
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.
dstRed=srcRed*alpha+dstRed*(1.0f-alpha)
dstBlue=srcBlue*alpha+dstBlue*(1.0f-alpha)
dstGreen=srcGreen*alpha+dstGreen*(1.0f-alpha)
где alpha=0..1.0f
Цитата:
Originally posted by k3Eahn
Можно пойти альтернативным путём без AlphaBlend - в общем случае альфа блендинг реализуется по формуле:
dstRed=srcRed*alpha+dstRed*(1.0f-alpha)
dstBlue=srcBlue*alpha+dstBlue*(1.0f-alpha)
dstGreen=srcGreen*alpha+dstGreen*(1.0f-alpha)
где alpha=0..1.0f
Можно пойти альтернативным путём без AlphaBlend - в общем случае альфа блендинг реализуется по формуле:
dstRed=srcRed*alpha+dstRed*(1.0f-alpha)
dstBlue=srcBlue*alpha+dstBlue*(1.0f-alpha)
dstGreen=srcGreen*alpha+dstGreen*(1.0f-alpha)
где alpha=0..1.0f
И вернёмся к тому, с чего начали:
Цитата:
Originally posted by AndreySar
Неужели надо делать сплайн для каждой точки картинки?
Неужели надо делать сплайн для каждой точки картинки?