方法1:
procedure TForm1.Button2Click(Sender: TObject); var JPEGImage: TJPEGImage; begin if SavePictureDialog1.InitialDir =''then SavePictureDialog1.InitialDir := ExtractFilePath(OpenPictureDialog1.FileName); if trim(LabeledEdit1.Text) <>''then SavePictureDialog1.FileName := trim(LabeledEdit1.Text) +'.jpg '; if SavePictureDialog1.execute then begin JPEGImage := TJPEGImage.Create; JPEGImage.Assign(image1.Picture.Graphic); JPEGImage.CompressionQuality:=25; JPEGImage.Compress; JPEGImage.SaveToFile(ExtractFilePath(SavePictureDialog1.Filename) + trim(LabeledEdit1.Text) +'.jpg '); end; end;
方法2:
procedure Tf_NewsPic.BitBtn1Click(Sender: TObject); var i: Integer; JI: TJPEGImage; begin if not OpenPictureDialog1.Execute then exit; for i :=0 to OpenPictureDialog1.Files.Count -1 do begin JI := TJPEGImage.Create; JI.LoadFromFile(OpenPictureDialog1.Files[i]); image4.Picture.Bitmap.Assign(JI); JI.Assign(image4.Picture.Bitmap); JI.CompressionQuality :=25; JI.Compress; JI.SaveToFile(zhtier.GetTempDir + ExtractFileName(OpenPictureDialog1.Files[i])); Q1.Append; TBlobField(Q1.Fieldbyname('图片')).LoadFromFile(OpenPictureDialog1.Files[i]); Q1.Post; JI.Free; end; Q1.Last; end;
一般情况下,采用方法2来操作。压缩效果,可去华军软件园或天空下载站下载“图片伴侣”来体验下。