Tag: getpixel

C#如何将获取的GetPixel / SetPixel颜色处理转换为Lockbits?

编辑:我非常感谢回复。 我在这里需要的不仅仅是示例代码,用于我在嵌套循环中使用几行代码所做的事情,因为这在GetPixel / SetPixel中是正常的,但也是我无法使用Lockbits工作的。 谢谢 我正在尝试将我的图像处理filter从GetPixel / SetPixel转换为Lockbits,以缩短处理时间。 我在Stack Overflow,MSDN和其他网站上也看过Lockbits教程,但是我做错了。 我从一个非常简单的filter开始,它简单地减少绿色以产生红色和紫色效果。 这是我的代码: private void redsAndPurplesToolStripMenuItem_Click(object sender, EventArgs e) { // Get bitmap from picturebox Bitmap bmpMain = (Bitmap)pictureBoxMain.Image.Clone(); // search through each pixel via x, y coordinates, examine and make changes. Dont let values exceed 255 or fall under 0. for (int y = 0; […]

如何比较GetPixel方法的颜色和Color.Black等方法中传递的颜色?

我有一个从图像中获取像素的循环,并尝试查看它们是否与作为参数传递给方法的颜色相同。 我尝试了Equals方法,但它不起作用。 我也尝试过ToKnown方法。 看起来匹配不起作用,因为合成两种颜色的值不匹配。 例: 使用GetPixel: {Name=ff000000, ARGB=(255, 0, 0, 0)} Color.Black: {Name=Black, ARGB=(255, 0, 0, 0)} if (pixelColor.ToArgb().Equals(startingOffsetColor.ToArgb())) { } 上面的代码工作,但我仍然想知道是否有任何更好的方法或任何方法可以减少任何CPU开销,因为我在循环语句中使用它。