...convert a Bitmap to an Icon?

Author: Thomas Stutz

Category: Graphic

procedure bmp2ico(Image: TImage; FileName: TFilename);
var
  
Bmp: TBitmap;
  Icon: TIcon;
  ImageList: TImageList;
begin
  
Bmp  := TBitmap.Create;
  Icon := TIcon.Create;
  try
    
Bmp.Assign(Image.Picture);
    ImageList := TImageList.CreateSize(Bmp.Width, Bmp.Height);
    try
      
ImageList.AddMasked(Bmp, Bmp.TransparentColor);
      ImageList.GetIcon(0, Icon);
      // Save it to a file
      
Icon.SaveToFile(FileName);
    finally
      
ImageList.Free;
    end;
  finally
    
Bmp.Free;
    Icon.Free;
  end;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  
bmp2ico(Image1, 'c:\test.ico');
end;

 

printed from
www.swissdelphicenter.ch
developers knowledge base