相关疑难解决方法(0)

如何在C#.NET中更改图像的像素颜色

我正在使用Java中的Images,我设计了超过100种图像(.png)格式,它们都是Trasparent和Black Color Drawing.

问题是,现在我被要求改变绘图的颜色(黑色 - ).

我搜索了许多在谷歌剪辑的代码,它改变了图像的位图(像素),但我不是在猜测我必须做什么来匹配精确的像素,并在图像处于透明模式时特别替换.下面是.Net中的代码(C#)

        Bitmap newBitmap = new Bitmap(scrBitmap.Width, scrBitmap.Height);
        for (int i = 0; i < scrBitmap.Width; i++)
        {
            for (int j = 0; j < scrBitmap.Height; j++)
            {                    
                originalColor = scrBitmap.GetPixel(i, j);
                if(originalColor = Color.Black)
                  newBitmap.SetPixel(i, j, Color.Red);
            }
        }            
        return newBitmap;
Run Code Online (Sandbox Code Playgroud)

但它根本没有匹配,我调试了它,在整个文件中,没有Color(originalColor)变量的Red,Green,Blue参数值.

有人可以帮忙吗?

.net c# drawing pixels bitmapimage

17
推荐指数
3
解决办法
5万
查看次数

是否有更快的GDI GetPixel()替代品?

GetPixel()在.NET应用程序中使用gdi32.dll来在屏幕上的任何位置采样像素的颜色.它工作正常,但它对我来说是一个主要的性能瓶颈.

有更快的方法吗?

.net windows winapi gdi+ gdi

8
推荐指数
2
解决办法
6224
查看次数

标签 统计

.net ×2

bitmapimage ×1

c# ×1

drawing ×1

gdi ×1

gdi+ ×1

pixels ×1

winapi ×1

windows ×1