Поддерживает ли Delphi TBitmap альфа-канал? - PullRequest
3 голосов
/ 13 января 2011

Я слышу, как люди говорят, что это не так.

Однако я создал TBitmap и очистил всю область с помощью

For I := 1 to bmp.Width do
  For J := 0 to bmp.Height do
    bmp.canvas.Pixels[I,J]:= $00000000;

Затем я нарисовал сглаженный текст на растровом изображении и сохранил его в файл. При открытии в gimp отображается информация о прозрачности.

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

Ответы [ 2 ]

17 голосов
/ 13 января 2011

Да, но вы должны установить

bmp.PixelFormat := pf32bit;
3 голосов
/ 13 января 2011

Delphi TBitmap - это просто оболочка для объекта Windows BITMAP.Да, он поддерживает альфа-каналы, но, очевидно, вы должны соответствующим образом установить свойство PixelFormat.

...