WEB开发网
开发学院软件开发Delphi delphi实现批量缩略图生成工具开发代码 阅读

delphi实现批量缩略图生成工具开发代码

 2006-02-04 13:56:10 来源:WEB开发网   
核心提示: 主要功能:1 生成指定图片的缩略图2 批量生成某一目录内所有图片缩略图3 提供5中缩略图尺寸定义模式4 目前只支持.jpg格式测试版下载:http://bjfile.focus.cn/file/15483/728_MJpg.rar核心代码://保存JPEG的缩略图PRocedure SavePic(SourceFil
 

主要功能:

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;

Tags:delphi 实现 批量

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接