如何将一个图像分成多个子图像?就像,我是否必须读取像素并将其以某种方式转换为图像?
例如:
如果图像的尺寸为100px(宽度)和180px(高度),并且我想将其拆分为4x4,我会读取宽度的前25px和高度的前45px,然后正确地对其进行递增?
如果是这样,我将像素存储到什么位置?更具体地说,将其保存为字节,图像等的数组吗?
您可以尝试以下代码示例(取自https://stackoverflow.com/a/4118195/);
for (int i = 0; i < 4; i++)
{
for (int y = 0; y < 4; y++)
{
Rectangle r = new Rectangle(i*(pictureBox1.Image.Width / 4),
y*(pictureBox1.Image.Height / 4),
pictureBox1.Image.Width / 4,
pictureBox1.Image.Height / 4);
g.DrawRectangle(pen,r );
list.Add(cropImage(pictureBox1.Image, r));
}
}
另一种选择是使用BitMap.Clone
,您可以在以下链接中找到一个示例。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句