一条命令就可以 procedure TForm1.Button3Click(Sender: TObject); var aWith,aHeight,x,y:integer; aAllBmp,ajpg:TBitmap; arect1,arect2:Trect; MyJPEG : TJPEGImage; begin ajpg :=TBitmap.Create; //arect2.Left ajpg.LoadFromFile('C:\Documents and Settings\Administrator\桌面\ms\map\1\2.bmp'); for x:=0 to 2 do for y:=0 to 2 do begin try aAllBmp:=TBitmap.Create; aAllBmp.Width:=300; aAllBmp.Height:=300; arect2:=Rect(0,0,300,300); arect1:=Rect(x*300,y*300,(x+1)*300,(y+1)*300); //目标矩形块的位置及大小 aAllBmp.Canvas.CopyRect(arect2,ajpg.Canvas,arect1); // aAllBmp.SaveToFile('C:\Documents and Settings\Administrator\桌面\ms\map\1\'+inttostr(x)+'-'+inttostr(y)+'.bmp'); MyJPEG := TJPEGImage.Create; with MyJPEG do begin Assign(aAllBmp); CompressionQuality:=100; //压缩比例 Compress; SaveToFile('C:\Documents and Settings\Administrator\桌面\ms\map\1\'+inttostr(x)+'_'+inttostr(y)+'.JPEG');//保存路径…… Free; end; aAllBmp.Free; except end; end; end;