Как создать 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 с белым цветом на С#. Как я могу это сделать?
Ответы
Ответ 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);