У меня есть приложение C# winForm, которое содержит элемент управления pictureBox. Этот элемент управления имеет событие Paint. Каждый раз, когда запускается событие рисования, динамически создается растровое изображение, и я выполняю на нем некоторый рисунок. И когда пользователь нажимает кнопку «Сохранить», отредактированное изображение сохраняется как файл jpg.
Все в порядке до сих пор. Когда я загружаю новое изображение в элемент управления pictureBox, остатки предыдущих правок все еще живы.
Как я могу стереть растровое изображение и начинать заново каждый раз, когда я загружаю новое изображение:
private void pb_Resim_Paint(object sender, PaintEventArgs e)
{
List<eVucutParcalari> list = new List<eVucutParcalari>(pointList.Keys);
// Loop through list
foreach (eVucutParcalari k in list)
{
Dictionary<Point, Color> dicItem = pointList[k];
foreach (KeyValuePair<Point, Color> pair in dicItem)
{
Point p = pair.Key;
Color c = pair.Value;
SolidBrush brush = new SolidBrush(c);
if (pb_Resim.Image == null)
return;
Bitmap bmp = new Bitmap(pb_Resim.Image);
Graphics gr = Graphics.FromImage(bmp);
gr.FillRectangle(brush, p.X, p.Y, 5, 5);
pb_Resim.Image = bmp;
}
}
}