我正在尝试将一张图片分成9个相等的部分。就像我们在益智游戏中看到的那样。图像可以是任何随机图像。我正在尝试一些代码,但它没有将它分割成相等的部分-它需要矩形的坐标值,但我需要简单的通用代码来将图像分割成相等的部分。
我有个图像。我想把它裁剪或分成9等份。但下面的代码每次都会从右上角裁剪图像的相同部分。
var imgarray = new Image[9];
var img = Image.FromFile("media\\a.png");
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
var index = i * 3 + j;
imgarray[index] = new Bitmap(104, 104);
var graphics = Graphics.FromImage(imgarray[index]);
graphics.DrawImage(img, new Rectangle(0, 0, 104, 104), new Rectangle(i * 104, j * 104, 104, 104), GraphicsUnit.Pixel);
graphics.Dispose();
}
}
发布于 2015-06-23 01:16:25
一些其他的整理工作。
var imgarray = new Image[9];
var img = Image.FromFile("media\\a.png");
for (int i = 0; i < 9; i++)
{
imgarray[i] = new Bitmap(104, 104);
var graphics = Graphics.FromImage(imgarray[i]);
graphics.DrawImage (
img,
new Rectangle(0, 0, 104, 104),
new Rectangle( (i%3) * 104, (i/3) * 104, 104, 104),
GraphicsUnit.Pixel);
graphics.Dispose();
}
}
https://stackoverflow.com/questions/30985392
复制相似问题