Вопрос по c#, drawing, picturebox, graphics – Рисование цветов в картинке?
В C # у меня есть картинка. Я хотел бы нарисовать 4 цвета. По умолчанию будет белый, красный, зеленый, синий. Как мне нарисовать эти 4 цвета в этой коробке? или я должен иметь 4 Picbox? в таком случае, как мне установить цвет RGB?
создайте обработчик события для события рисования и сделайте так, чтобы он выглядел следующим образом:
private void PictureBox_Paint(object sender, PaintEventArgs e)
{
int width = myPictureBox.ClientSize.Width / 2;
int height = myPictureBox.ClientSize.Height / 2;
Rectangle rect = new Rectangle(0, 0, width, height);
e.Graphics.FillRectangle(Brushes.White, rect);
rect = new Rectangle(width, 0, width, height);
e.Graphics.FillRectangle(Brushes.Red, rect);
rect = new Rectangle(0, height, width, height);
e.Graphics.FillRectangle(Brushes.Green, rect);
rect = new Rectangle(width, height, width, height);
e.Graphics.FillRectangle(Brushes.Blue, rect);
}
Это разделит поверхность на 4 прямоугольника и раскрасит каждый из них в цвета Белый, Красный, Зеленый и Синий.
что именно вы хотели бы нарисовать. Вы не можете нарисовать красный - это не имеет смысла. Однако вы можете нарисовать красный прямоугольник в месте (0,0), которое имеет высоту 100 пикселей и ширину 100 пикселей. Я отвечу, что могу, однако.
Если вы хотите установить контур фигуры на определенный цвет, вы должны создатьРучка объект. Однако, если вы хотите заполнить фигуру цветом, вы должны использовать объект Brush. Вот пример того, как бы вы нарисовали прямоугольник, заполненный красным, и прямоугольник, обведенный зеленым:
private void pictureBox_Paint(object sender, PaintEventArgs e)
{
Graphics graphics = e.Graphics;
Brush brush = new SolidBrush(Color.Red);
graphics.FillRectangle(brush, new Rectangle(10, 10, 100, 100));
Pen pen = new Pen(Color.Green);
graphics.DrawRectangle(pen, new Rectangle(5, 5, 100, 100));
}