如何从图像中保存所需的像素并使用该像素绘制图像

时间:2012-07-18 11:51:09

标签: c# asp.net

大家好我已经编写了一个示例代码来查找图像中的黑色像素,现在我想将所有这些像素保存到一个数组中并希望保存该特定图像,保存像素可以帮助一些我

假设我获得像素的图像如下

我将读取所有黑色像素,并希望保存它们,我想用透明背景重新成像Fallout。这就是我写的

for (int i = 0; i < b.Width; i++)
        {
            for (int j = 0; j < b.Height; j++)
            {
                Color pixelColor = b.GetPixel(i, j);

                Response.Write("The color is " + pixelColor);

                if (pixelColor.ToArgb() == Color.Black.ToArgb())
                {
                    //Will get black color here
                }
            }
        }

有些人可以帮我剩下的。

1 个答案:

答案 0 :(得分:0)

创建第二个具有相同大小的位图

Bitmap newBitmap = new Bitmap(oldBitmap.Width, oldBitmap.Height);

您可以直接比较颜色

if (pixeColor == Color.Black) {

if { }

newBitmap.SetPixel(...);

就是这样,但如果你不是透明版,你可以使用Bitmap.MakeTransparent(Color);

PS:GetPixel()和SetPixel()非常慢,尝试使用不安全的位图访问