我们网站上有数以千计的图片需要切成小块。图像是屏幕截图,各个屏幕截图之间有空格。我试图在.NET中找到一种方法,以编程方式扫描图像并将它们垂直切片(它总是垂直而不是水平)。
然后我需要将单个图像保存到我们的blob存储中,一旦我拥有了Image对象,我知道该怎么做。我不知道该怎么做的部分是扫描原始图像的空白区域并提取内容区域。
大多数屏幕截图都是矩形的,我附上了最复杂的例子,其中有重叠且宽度不同。在这个例子中,我需要从第一个创建5个图像,我们使用.png格式。
任何指针都会很棒!
答案 0 :(得分:1)
听起来好像你想将图像转换为像素数组。然后你可以获取该数组的部分并将其保存到blob。
以下是我发现的将图像保存到数组的示例代码。
System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap("FILENAME.bmp", true);
byte[,] PixelArray = new byte[bitmap.Width,bitmap.Height];
int x,y;
for (x = 0; x < bitmap.Width; x++)
{
for (y = 0; y < bitmap.Height; y++)
{
PixelArray[x,y] = bitmap.GetPixel(x,y);
}
}