procedure TForm1.Button1Click(Sender: TObject);
var jp:TJPEGImage;
begin
jp:=TJPEGImage.Create;
jp.LoadFromFile(self.Edit1.Text);
jp.CompressionQuality:=strtoint(self.Edit3.Text);
jp.Compress; //只要加上,目标文件就变成空文件了
jp.SaveToFile(self.Edit2.Text);
jp.Free;
ShowMessage('ok');
end;上面这个程序一执行,转换后的文件长度就变成零了,大家有没有遇到过这样的问题呀。
var jp:TJPEGImage;
begin
jp:=TJPEGImage.Create;
jp.LoadFromFile(self.Edit1.Text);
jp.CompressionQuality:=strtoint(self.Edit3.Text);
jp.Compress; //只要加上,目标文件就变成空文件了
jp.SaveToFile(self.Edit2.Text);
jp.Free;
ShowMessage('ok');
end;上面这个程序一执行,转换后的文件长度就变成零了,大家有没有遇到过这样的问题呀。
delphi6下测试通过
(假设质量为20)
------------------------
procedure TForm1.Button2Click(Sender: TObject);
var
jp:TJPEGImage;
bitmap:TBitmap;
begin
bitmap:=TBitmap.Create;
jp:=TJPEGImage.Create;
jp.LoadFromFile(self.Edit1.Text);
jp.CompressionQuality:=20;
bitmap.Assign(jpg);
jp.Assign(bitmap);
jp.Compress;
jp.SaveToFile(self.Edit2.Text);
jp.Free;
ShowMessage('ok');
end;
没有问题
你可以参考
----------------------
procedure TForm1.Button2Click(Sender: TObject);
var
jpg:TJPEGImage;
bitmap:TBitmap;
begin
bitmap:=TBitmap.Create;
jpg:=TJPEGImage.Create;
jpg.LoadFromFile('c:\1.jpg');
jpg.CompressionQuality:=20;
bitmap.Assign(jpg);
jpg.Assign(bitmap);
jpg.Compress;
jpg.SaveToFile('c:\2.jpg');
jpg.Free;
end;