Как создать 1024x1024 RGB растровое изображение белого цвета? - программирование

Как создать 1024x1024 RGB растровое изображение белого цвета?

Неловко задавать этот вопрос, но не может найти ответа.

Я пробовал это напрасно.

Image resultImage = new Bitmap(image1.Width, image1.Height, PixelFormat.Format24bppRgb);

using (Graphics grp = Graphics.FromImage(resultImage)) 
{
    grp.FillRectangle(
        Brushes.White, 0, 0, image1.Width, image1.Height);
    resultImage = new Bitmap(image1.Width, image1.Height, grp);
}

Я в основном хочу заполнить растровое изображение RGB 1024x1024 с белым цветом на С#. Как я могу это сделать?

4b9b3361

Ответ 1

Вы назначаете новое изображение resultImage, тем самым перезаписывая свою предыдущую попытку создания белого изображения (что, кстати, должно быть успешным).

Так что просто удалите строку

resultImage = new Bitmap(image1.Width, image1.Height, grp);

Ответ 2

У вас почти было это:

private Bitmap DrawFilledRectangle(int x, int y)
{
    Bitmap bmp = new Bitmap(x, y);
    using (Graphics graph = Graphics.FromImage(bmp))
    {
        Rectangle ImageSize = new Rectangle(0,0,x,y);
        graph.FillRectangle(Brushes.White, ImageSize);
    }
    return bmp;
}

Ответ 3

Другой подход,

Создать растровое изображение единицы

var b = new Bitmap(1, 1);
b.SetPixel(0, 0, Color.White);

И масштабируйте его

var result = new Bitmap(b, 1024, 1024);