The code below will extract icon from file and convert it to png but without alpha transparency ?
var
IconIndex : word;
icon:TIcon;
png:TPngImage;
bmp:TBitmap;
begin
IconIndex := 0;
icon := TIcon.Create;
icon.Handle := ExtractAssociatedIcon(hInstance,pChar(Edit1.Text), IconIndex) ;
bmp:= TBitmap.Create;
bmp.LoadFromFile('blank.bmp');
DrawIcon(bmp.Canvas.Handle, 0, 0, icon.Handle) ;
png := TPngImage.Create();
png.Assign(bmp);
png.SaveToFile('icon.png');
end;
The PngComponents contain a unit PngFunctions.pas, where you can have a look at
procedure ConvertToPNG(Source: TGraphic; out Dest: TPngImage);
There you can find the code to convert a TIcon into a TPngImage - or just use that procedure.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With