我想将一个ico从db保存到文件,但我有透明度问题。 当我将其保存到c:\ 1.ico时,结果文件没有透明度。
procedure DBIconsToFIle;
var
Streams: TStream;
fIcon : TBitmap;
begin
//load stream from db
FIcon.LoadFromStream(Streams);
FIcon := TBitmap.Create;
FIcon.TransparentColor := clWhite;
FIcon.PixelFormat := pf32bit;
FIcon.Height := 16;
FIcon.Width := 16;
FIcon.SaveToFile(tmpFile);
//destroys
end;
如何以透明度保存?
答案 0 :(得分:3)
图标的文件扩展名是.ico,而不是.icon。另外,如果要保存图标,为什么不使用TIcon
而不是TBitmap
?为什么世界上你首先使用LoadFromStream
而第二次使用TBitmap.Create
?!
稍微更正常的代码
var
Icon: TIcon;
begin
Icon := TIcon.Create;
try
Icon.LoadFromStream(SomeStream);
Icon.SaveToFile(SomeFileName);
finally
Icon.Free;
end;
为你工作?