Ok, dann will ich mal. Hier sind die beiden Prozedur-Versionen von LoadPNGintoBitmap32:
Delphi-Quellcode:
procedure LoadPNGintoBitmap32(DstBitmap: TBitmap32; Filename: String; out AlphaChannelUsed: Boolean); overload;
procedure LoadPNGintoBitmap32(DstBitmap: TBitmap32; SrcStream: TStream; out AlphaChannelUsed: Boolean); overload;
Die Version, die Pixelex benutzt hat, ist die mit dem Filenamen. Dort wird erst ein Filestream erzeigt, und dieser an die eigentliche Arbeitsversion durchgereicht:
Delphi-Quellcode:
procedure LoadPNGintoBitmap32(DstBitmap: TBitmap32; Filename: String; out AlphaChannelUsed: Boolean);
var
FileStream: TFileStream;
begin
FileStream := TFileStream.Create(Filename, fmOpenRead);
try
LoadPNGintoBitmap32(DstBitmap, FileStream, AlphaChannelUsed);
finally
FileStream.Free;
end;
end;
Um jetzt eine Grafik aus einer Resource zu laden, muss ich einen TResourceStream erzeugen, und diesen an LoadPNGintoBitmap32 übergeben.
Delphi-Quellcode:
Var ResStream: TResourceStream;
begin
ResStream := TResourceStream.Create(hInstance, 'G001', RT_RCDATA);
try
LoadPNGintoBitmap32(DstBitmap, ResStream, AplhaChannelUsed);
finally
ResStream.Free;
end;
end;
Gruß, teebee