Как да получите достъп до пиксели от изображение в проект xamarin?

Искам да получа достъп до цветовете на пикселите от изображение, но доколкото знам Изображението не може да се използва по този начин. В моя код има събитие Modify, където извиквам метод MakeDarker, но искам да знам как мога да променя пикселите там.

Опитах се да преобразувам изображение в растерно изображение или в байтов масив, но нищо от това не работи за мен. Visual Studio дори не разпознава Bitmap, когато го въвеждам, въпреки че използвам Xamarin.Forms.Image.

public void Modify(object sender, EventArgs args)
{
    ImageModify modify = new ImageModify();

    picture = modify.MakeDarker(picture);
}
class ImageModify
{
    public Image MakeDarker(Image image)
    {
        Image output = new Image();

        for (int i = 0; i < image.Height; i++)
        {
            for (int j = 0; j < image.Width; j++)
            {

            }
        }

        return output;
    }
}

person Kosodrzewina    schedule 07.04.2019    source източник
comment
погледнете нещо като SkiaSharp или ImageEdit за манипулиране на изображения. Каквото и да правите, ще трябва да бъде направено на основния ImageSource, а не на самата контрола Image   -  person Jason    schedule 07.04.2019


Отговори (1)


Опитахте ли с Color struct от пространството на имената System.Drawing (не знам дали можете да го използвате в Xamarin или е специфично за проекти, базирани на Windows)?

Използвах го в моя собствен C# проект за събиране на RGB стойности на пиксел и работи добре.

person MenKara    schedule 07.04.2019
comment
Проблемът е, че така или иначе трябва да използвам Bitmap. Включих System.Drawing, но по някаква причина не мога да използвам Bitmap. - person Kosodrzewina; 07.04.2019
comment
Опитвали ли сте да използвате Клас растерно изображение вместо Клас на изображение за зареждане на вашите изображения? - person MenKara; 07.04.2019