delphi BMP转换PNG


uses Vcl.Imaging.pngimage;

//uses Vcl.Imaging.pngimage;
//ConvertBMP2PNG('C:\Users\ \Desktop\123.bmp');
procedure ConvertBMP2PNG(fName: String);
var
    BMP: TBitmap;
    PNG: TPNGImage;
begin
    if not (ExtractFileExt(fName)='.bmp') then exit;
    if FileExists(ChangeFileExt(fName, '.png')) then begin
      //  WorkList.Add(fName + ' -> Convert to PNG -> PNG exists!');
      //  Log(fName + ' -> Convert to PNG -> PNG exists!');
        exit;
    end;
    BMP:= TBitmap.Create;
    PNG:= TPNGImage.Create;
    try
        BMP.LoadFromFile(fName);
        if not BMP.Monochrome then begin
          //  WorkList.Add(fName + ' -> Color to Monochrome');
          //  Log(fName + ' -> Color to Monochrome');
            BMP.Monochrome:= True;
        end;
      //  WorkList.Add(fName + ' -> Convert to PNG');
      //  Log(fName + ' -> Convert to PNG');
      //  inc(fCount);
        PNG.Assign(BMP);
        PNG.CompressionLevel:=9;
        PNG.SaveToFile(ChangeFileExt(fName,'.png'));
    finally
        BMP.Free;
        PNG.Free;
    end;
end;

联系电话:
020-00000000
联系电话:
020-00000000
联系电话:
020-12345678