我有一个想要在TPaintBox上绘制的位图。问题是我必须把它旋转到一个特定的角度。我决定使用TBitmap32。我是这样做的:我首先创建一个TBitmap,然后将其传输到TBitmap32,执行转换,然后再次将TBitmap32移动到TBitmap。我在TPaintBox上绘制了最后一个TBitmap。问题是我得不到透明度。
位图有一个红色背景,我想使其透明。你会帮忙吗?我做错了什么?
carImage32 := TBitmap32.Create;
carImage32.Width := carImageTMP.Width;
carImage32.Height := carImageTMP.Height;
carImage32.Canvas.Draw(0, 0, carImageTMP); //assign TBitmap
carImage := TBitmap.Create;
carImage.Width := carImageTMP.Width;
carImage.Height := carImageTMP.Height;
RotateBitmap(carImage32,angle,false,clNone,True);
carImage.Transparent:=True;
carImage.TransparentColor:=clRed;
carImage.Assign(carImage32);
paintBox.Canvas.Draw(0,0,carImage);发布于 2021-04-11 23:20:05
我解决了我的问题。对于TBitmap32,我也应该使用这部分代码:
auto.carImage32.DrawMode:=dmTransparent;
auto.carImage32.OuterColor:=clRed32;并且成功了:)
https://stackoverflow.com/questions/67039120
复制相似问题