1,183
社区成员
发帖
与我相关
我的任务
分享
var
bmpSrc, bmpDes: TBitmap;
i: Integer;
sPic, sPicSava, sTmpPath, ExFileName, sEx: string;
pf: TPixelFormat;
begin
if FFileListSrc.Count = 0 then
begin
ShowMessage('重新载入源图片');
Exit;
end;
bmpSrc := TBitmap.Create;
bmpDes := TBitmap.Create;
// pf := bmpSrc.PixelFormat;
try
sTmpPath := ExcludeTrailingPathDelimiter(edt2.Text);
for i:= 0 to FFileListSrc.Count - 1 do
begin
sPic := FFileListSrc.Strings[i];
ExFileName := ExtractFileName(sPic);
sEx := ExtractFileExt(ExFileName);
if (sEx <> '.BMP') and (sEx <> '.JPG') then Continue;
sPicSava := sTmpPath;
sPicSava := sPicSava + '\' + ExFileName;
bmpSrc.LoadFromFile(sPic);
bmpDes.Width := Round(bmpSrc.Width * (StrToInt(edt3.Text)/100));
bmpDes.Height := Round(bmpSrc.Height * (StrToInt(edt4.Text)/100));
// bmpDes.PixelFormat := pf;
// bmpSrc.PixelFormat := pf;
SetStretchBltMode(bmpDes.Canvas.Handle, HALFTONE);
StretchBlt(bmpDes.Canvas.Handle, 0, 0, bmpDes.Width, bmpDes.Height,
bmpSrc.Canvas.Handle, 0, 0, bmpSrc.Width, bmpSrc.Height, SRCCOPY);
bmpDes.SaveToFile(sPicSava);
end;
mmo1.Lines.Add('图片转换完成!')
finally
bmpSrc.Free;
bmpDes.Free;
FFileListSrc.Clear;
end;