程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> delphi實現批量縮略圖生成工具開發代碼

delphi實現批量縮略圖生成工具開發代碼

編輯:Delphi
 

  主要功能:

  1 生成指定圖片的縮略圖
  2 批量生成某一目錄內所有圖片縮略圖
  3 提供5中縮略圖尺寸定義模式
  4 目前只支持.jpg格式
  
  測試版下載:http://bjfile.focus.cn/file/15483/728_MJpg.rar
  
  核心代碼:
  
  //保存JPEG的縮略圖
  procedure SavePic(SourceFileName,DescFileName: String);
  const
      MaxWidth = 200 ;
      MaxHigth = 200 ;
  var
     jpg: TJPEGImage;
     bmp: TBitmap;
     SourceJpg: TJPEGImage;
     Width, Height,tmpInt: Integer;
  begin
     try
       bmp := TBitmap.Create;
       SourceJpg := TJPEGImage.Create;
       Jpg:= TJPEGImage.Create;
       //讀取源文件
       SourceJpg.LoadFromFile(SourceFileName);
       //計算縮小比例
       if SourceJpg.Width >= SourceJpg.Height then
          tmpInt := Round(SourceJpg.Width div MaxWidth)
       else
          tmpInt := Round(SourceJpg.Height div MaxHigth) ;
       Width  := SourceJpg.Width  div tmpInt ;
       Height := SourceJpg.Height div tmpInt ;
       //縮小
       bmp.Width := Width;
       bmp.Height := Height;
       bmp.PixelFormat := pf24bit;
       bmp.Canvas.StretchDraw(Rect(0,0,Width,Height), SourceJpg);
       //保存
       jpg.Assign(bmp);
       jpg.SaveToFile(DescFileName);
     finally
       bmp.Free;
       jpg.Free;
       SourceJpg.Free;
     end;
  end;
  

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved