C# 如何检测最上面的黑色像素

C# 如何检测最上面的黑色像素,c#,winforms,image-processing,pixels,C#,Winforms,Image Processing,Pixels,我有一个从用户输入的文本创建图像的应用程序。在该图像中,我想检测顶部字母的起始位置,以便我可以在我的品牌徽标上盖章并相应地裁剪图像 这是我到目前为止尝试过的,但无法让它工作 Bitmap myBitmap = new Bitmap(Image.FromFile(@"C:\Users\me\Desktop\test_textimage.jpg")); for (int j = 0; j < 2000; j++) // loops Y axis { for (int i = 0; i

我有一个从用户输入的文本创建图像的应用程序。在该图像中,我想检测顶部字母的起始位置,以便我可以在我的品牌徽标上盖章并相应地裁剪图像

这是我到目前为止尝试过的,但无法让它工作

Bitmap myBitmap = new Bitmap(Image.FromFile(@"C:\Users\me\Desktop\test_textimage.jpg"));

for (int j = 0; j < 2000; j++) // loops Y axis
{
    for (int i = 0; i < 3500; i++) // loops X axis
    {
        System.Drawing.Color color = myBitmap.GetPixel(i, j);
        if (color == System.Drawing.Color.Black)
        { // breakpoint here... it never hits...
        }
    }
}
我100%确信图像是黑色字体变成白色背景。在photoshop中测试


有人能帮忙吗?谢谢。

重复吗?查看调试器中的颜色。可能您的像素格式有问题,它可能包括也可能不包括alpha通道。您可能需要与颜色进行比较;而不是颜色。黑色。要添加一个小房间,您可能需要这样测试:if color.GetBrightness<0。1@DavidBrabant它并不完全重复,因为他正在将图像转换为像素阵列。。。但不管怎样,它帮助我找到了解决办法。@TaW你在钱上是对的。。。谢谢是alpha通道扰乱了我的结果。谢谢