首页  编辑  

bmp<-->jpg

Tags: /超级猛料/Picture.图形图像编程/图片转换/   Date Created:

可以如下,(其他格式也许也可,试一下)记得加入 use jpeg.

var

 MyJpeg: TJpegImage;

 Image1: TImage;

begin

 Image1:= TImage.Create(self);

 MyJpeg:= TJpegImage.Create;

 Image1.Picture.Bitmap.LoadFromFile('c:\windows\desktop\aa.BMP');  // Load the Bitmap from a file

 MyJpeg.Assign(Image1.Picture.Bitmap);  // Assign the BitMap to MyJpeg object

 MyJpeg.CompressionQuality:=StrToInt('75');

 MyJpeg.Compress;

 MyJpeg.SaveToFile('c:\windows\desktop\test.JPG'); // Save the JPEG to Disk

end;

var

 MyJpeg: TJpegImage;

 bmp: Tbitmap;

begin

 bmp:=tbitmap.Create;

 MyJpeg:= TJpegImage.Create;

 myjpeg.LoadFromFile('c:\windows\desktop\aa.jpg');

 bmp.Assign(myjpeg);

 bmp.SaveToFile('c:\windows\desktop\test.bmp'); // Save the JPEG to Disk

end;

**************************************************************************

///Bitmap 和 JPEG 格式间的快速转换

function Bmp2Jpg(Bmp: TBitmap; Quality: Integer = 100): TJpegImage;

 begin

   Result := nil;

   if Assigned(Bmp)

   then begin

     Result := TJpegImage.Create;

     Result.Assign(Bmp); {It′s all folks...}

     Result.CompressionQuality := Quality;

     Result.JPEGNeeded; {Key method...}

     Result.Compress;

   end;

 end;

 function Jpg2Bmp(Jpg: TJpegImage): TBitmap;

 begin

   Result := nil;

   if Assigned(Jpg)

   then begin

     Result := TBitmap.Create;

     Jpg.DIBNeeded; {Key method...}

     Result.Assign(Jpg); {It′s all folks...}

   end;

 end;