- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
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;