TSpeedButton поддерживает 32-битные глифы? - PullRequest
0 голосов
/ 01 февраля 2020

Я хочу загрузить Glyph из TSpeedButton во время выполнения из TImageList. В этом списке изображений у меня есть 32-битные растровые изображения (RGB + Alpha), а не 24-битные простые RGB. Я загружаю глиф с помощью следующего кода:

 SpeedButton.Glyph.Canvas.Brush.Style:= bsClear;
 SpeedButton.Glyph.PixelFormat:= pf32bit;
 SpeedButton.NumGlyphs:= 2;
 SpeedButton.Glyph.SetSize(ImgList.Width * 2, ImgList.Height);
 ImgList.Draw(SpeedButton.Glyph.Canvas, 0, 0, idxCancelRed);
 ImgList.Draw(SpeedButton.Glyph.Canvas, Pics.ImgList, 0, idxCancelRedDis);

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

...