private List<Rectangle> CreateAvgCutRectangle(int imgWidth, int imgHeight, int cutRowsNum, int cutCellsNum)
{
List<Rectangle> lstRect = new List<Rectangle>();
int avgWidth = imgWidth / cutCellsNum;//每块的平均宽度
int avgHeight = imgHeight / cutRowsNum;//每块的平均高度
int offsetX = 0, offsetY = 0;
int cutHeight = avgHeight;
int cutWidth = avgWidth;
while (true)
{
//列分块
if (imgHeight - offsetY < avgHeight * 2)
cutHeight = imgHeight - offsetY;
offsetX = 0;
cutWidth = avgWidth;
while (true)
{
//行分块
if (imgWidth - offsetX < avgWidth * 2)
cutWidth = imgWidth - offsetX;
lstRect.Add(new Rectangle(offsetX, offsetY, cutWidth, cutHeight));
offsetX += cutWidth;
if (offsetX >= imgWidth) break;
}
offsetY += cutHeight;
if (offsetY >= imgHeight) break;
}
return lstRect;
}