Sorry, ich bin's schon wieder.
So geht es am kürzesten und besten, finde ich:
Code:
procedure TForm1.btnIconWithStarTheRightWayClick(Sender: TObject);
var
bm: TBitmap;
wic: TWicImage;
begin
wic := TWicImage.Create;
try
wic.Assign(ImageCollection.GetSourceImage(ImageCollection.GetIndexByName
('Icon'), 128, 128));
bm := TBitmap.Create;
try
//Durch assign ist automatisch bm.pixelformat=pf32bit und bm.Alphaformat=afDefined
bm.Assign(wic);
ImageCollection.Draw(bm.Canvas, Rect(0, 2 * wic.height div 3,
wic.Width div 3, wic.height), 'Star');
wic.Assign(bm);
wic.ImageFormat := wifPng;
Image1.Picture := nil;
Image1.Picture.Graphic := wic;
wic.SaveToFile('IconWithStar.png');
finally
bm.Free;
end;
finally
wic.Free;
end;
end;
So, jetzt hast du 3 Versionen zur Auswahl
.