在引用单元中加入 Jpeg,然后使用如下方法
var
jpg:TJpegImage;
bmp:TBitmap;
begin
jpg:=TJpegImage.Create;
bmp:=TBitmap.Create;
jpg.LoadFromFile('1.jpg'); //加载jpeg图片
bmp.Assign(jpg); //转换为位图
bmp.SaveToFile('1.bmp');
jpg.free;
bmp.free;
end;
end;
var
jpg:TJpegImage;
bmp:TBitmap;
begin
jpg:=TJpegImage.Create;
bmp:=TBitmap.Create;
jpg.LoadFromFile('1.jpg'); //加载jpeg图片
bmp.Assign(jpg); //转换为位图
bmp.SaveToFile('1.bmp');
jpg.free;
bmp.free;
end;
end;
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls,jpeg;type
TDrawJPEG = class(TJPEGImage)
public
procedure Draw(ACanvas: TCanvas; const Rect: TRect); override;
end;type
TForm1 = class(TForm)
Button1: TButton;
OpenDialog1: TOpenDialog;
procedure Button1Click(Sender: TObject);
private
public
procedure LoadJPEGToTBitmap(Filename : string);
end;var
Form1: TForm1;implementation{$R *.DFM}procedure TForm1.LoadJPEGToTBitmap(Filename: string);
var
JPG : TDrawJPEG;
Bmp:TBitmap;
R : TRect;
begin
JPG:=TDrawJPEG.Create;
Bmp:=TBitmap.Create;
JPG.LoadFromFile(Filename);
Bmp.Width:=JPG.Width;
Bmp.Height:=JPG.Height;
R.Left:=0;
R.Top:=0;
R.Bottom:=JPG.Height;
R.Right:=JPG.Width;
JPG.Draw(Bmp.Canvas,R);
Bmp.SaveToFile('mybmp.bmp');
JPG.Free;
Bmp.Free;
end;{ TDrawJPEG }
procedure TDrawJPEG.Draw(ACanvas: TCanvas; const Rect: TRect);
begin
inherited Draw(ACanvas,Rect);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
LoadJPEGToTBitmap(Opendialog1.FileName);
end;end.