delphi Jpeg压缩的两种方法


本文整理自网络,侵删。

 

方法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;

相关阅读 >>

Delphi 中string字符串转换byte[]字节数组

Delphi 为当前窗口客户区捉图: getformimage

Delphi dll创建并调用

Delphi android 安卓中保持屏幕常亮

Delphi unigui执行程序部署有3种形式

Delphi 上传文件到七牛,纯原生

Delphi 工程判断内存溢出reportmemoryleaksonshutdown := true;

Delphi record,两种声明方式

Delphi ansi字符串转unicode编码

Delphi sysutils.strcat

更多相关阅读请进入《Delphi》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...