Как я заполняю битовый массив сплошным цветом?

Ctrl + Сдвиг + P для нахождения фигурной скобки соответствия. Действительно полезный при работе с длинными кодами.

37
задан Jeromy Irvine 3 April 2016 в 15:49
поделиться

5 ответов

Это должно делать то, что вам нужно. Он заполнит все растровое изображение указанным цветом.

Bitmap Bmp = new Bitmap(width, height);
using (Graphics gfx = Graphics.FromImage(Bmp))
using (SolidBrush brush = new SolidBrush(Color.FromArgb(redvalue, greenvalue, bluevalue)))
{
    gfx.FillRectangle(brush, 0, 0, width, height);
}
53
ответ дан 27 November 2019 в 04:20
поделиться

Это зависит от того, что вы пытаетесь выполнить, но обычно вы используете GDI +, получая графический объект и затем отрисовывая его:

Graphics g = Graphics.FromImage(bitmap); 

Это на самом деле большая тема, здесь Вот несколько руководств для начинающих: Руководства по GDI +

Вот отрывок из руководства по рисованию прямоугольника с градиентной заливкой.

Rectangle rect = new Rectangle(50, 30, 100, 100); 
LinearGradientBrush lBrush = new LinearGradientBrush(rect, Color.Red, Color.Yellow, LinearGradientMode.BackwardDiagonal); 
g.FillRectangle(lBrush, rect); 
6
ответ дан 27 November 2019 в 04:20
поделиться

Вы можете использовать LockBits для ускорения записи пикселей (доступ указателя вместо вызова метода на пиксель).

3
ответ дан 27 November 2019 в 04:20
поделиться

Вы избалованы выбором здесь: -)

Альтернативой использованию GDI + является использование WPF (см. RenderTargetBitmap.Render .)

Также см. этот вопрос .

2
ответ дан 27 November 2019 в 04:20
поделиться

Я предлагаю проверить библиотеку GD.

Я почти уверен, что есть библиотека c #. http://www.boutell.com/gd/

0
ответ дан 27 November 2019 в 04:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: