Graphics32 TBitmap32.Assign() 有什么问题?为什么 TBitmap32 没有保留原始图像的透明度,而 TBitmap 一切都很好?这是一个示例代码:
procedure TForm1.Button8Click(Sender: TObject);
var
bmp32: TBitmap32;
bmp: TBitmap;
wic: TWICImage;
begin
bmp32 := TBitmap32.Create(TMemoryBackend);
bmp := TBitmap.Create;
wic := TWICImage.Create;
try
wic.LoadFromFile('overlay.png'); // transparent
bmp32.Assign(wic);
bmp32.SaveToFile('BMP32.bmp'); // !!! nontransparent .bmp
img1.Bitmap.Assign(bmp32);
bmp.Assign(wic);
bmp.SaveToFile('BMP.bmp'); // transparent .bmp
img2.Bitmap.Assign(bmp);
finally
wic.Free;
bmp32.Free;
bmp.Free;
end;
end;
这是一个 Graphics32 库(版本是 github 的最新版本)错误吗?还是 TWICImage 错误?还是 Delphi 10.2.3 的错误?还是我做错了什么?如何解决这个问题?