如何通过在Xamarin或C#中触摸或在屏幕上移动来从图像中获取RGB值

问题描述 投票:0回答:2

如何通过在Xamarin或C#中触摸或在屏幕上移动来从图像中获取RGB值。

我的意思是我想从正在触摸的像素中获取图像的RGB值,而当我移动手指或触摸另一个像素时,我将获得新的RGB值。请帮我。我该怎么办?

非常感谢。

c# xamarin xamarin.forms xamarin.android
2个回答
0
投票

我对Xamarin不太了解,但是如果您将屏幕坐标设置为x,y,在C#中,您可以执行以下操作。

Bitmap bmp = new Bitmap("image_path");

Color color = bmp.GetPixel(x,y)

int r = p.R;
int g = p.G;
int b = p.B;

0
投票

两种方法:

  1. 为在OnTouch事件上实现读取屏幕坐标的每个平台的自定义图像渲染器。
  2. Skiasharp库。

然后您可以使用此伪代码获取像素:

    private SKColor GetPixelColor(SKPoint point, SKBitmap bitmap)
    {
        SKColor color;
        color = bitmap.GetPixel((int)point.X, (int)point.Y);
        return color;
    }

SKColor,以免得到:

var red = color.Red;
var green = color.Green;
var blue = color.Blue;
© www.soinside.com 2019 - 2024. All rights reserved.