Delphi: изображение с альфа-возможностями смешивания

Есть ли некоторый простой компонент, который мог отобразить PNG 32-разрядные изображения и альфа-смешение, которое он к другому изображению на мыши вводит и в отпуск мыши? Или даже просто простое изображение, которое может загрузить 32-разрядный PNG и дополнительно имело бы параметр Alpha...

Я предполагаю, что мог пользоваться некоторой библиотекой кожи (alphacontrols?) или некоторая графическая библиотека, но для некоторых простых чисто визуальных эффектов, которые были бы настоящим излишеством и я, может казаться, не нахожу простой, который делает это для меня и работал бы над Стеклянной поверхностью также...

1
задан Cralias 8 June 2010 в 14:12
поделиться

2 ответа

Базовый TImage способен отображать изображение PNG и альфа-светить его на то, что находится за ним. Вам просто нужно добавить блок "pngimage" в пункт uses вашей формы. Вы не упомянули версию Delphi, на которой вы работаете: В Delphi 2010 есть этот блок, но я понятия не имею, с какой версии Delphi они начали его поставлять. Для Delphi 7 я точно знаю, что вам нужно найти открытый исходный код "pngimage".

Если вам нужно делать это, когда пользователь перемещается внутрь и наружу вашего элемента управления, подумайте о кэшировании изображений состояния в растровых изображениях: это будет быстрее во время выполнения, и вы можете использовать один TImage, который показывает текущее изображение, вам не нужно два перекрывающихся элемента управления TIMage.

1
ответ дан 2 September 2019 в 23:57
поделиться

Это не совсем компонент, но вот ссылка на хорошую статью о том, как сделать это самостоятельно. Всего несколько строк кода:

http://melander.dk/articles/alphasplash/

1
ответ дан 2 September 2019 в 23:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: