Хочу сохранить изображение с PictureBox, но постоянно сохраняется только чёрное изображение или вылетает ошибка. Подскажите в чём проблема.
Color CurrentColor = Color.Green;
bool isPresed = false;
Point CurrentPoint;
Point PrePoint;
Graphics g;
public Form1()
{
InitializeComponent();
g = pictureBox1.CreateGraphics();
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox1.Save("test.jpg", ImageFormat.Jpeg);
}
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
isPresed = true;
CurrentPoint = e.Location;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (isPresed)
{
PrePoint = CurrentPoint;
CurrentPoint = e.Location;
for_paint();
}
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
isPresed = false;
}
private void for_paint()
{
Pen p = new Pen(CurrentColor);
g.DrawLine(p, PrePoint, CurrentPoint);
}
Приведённый код рисует на графиксе пикчабокса. Естественно, Image
остаётся пустым.
Нужно создать графикс у Image
и использовать его. Предварительно, нужно создать картинку нужного размера.
// эту строку удаляем
//g = pictureBox1.CreateGraphics();
var bitmap = new Bitmap(pictureBox1.Width, pictureBox1.Height);
pictureBox1.Image = bitmap;
g = Graphics.FromImage(bitmap);
Ещё нужно обновлять PictureBox
, чтобы внесённые в Image
изменения отобразились:
private void for_paint()
{
Pen p = new Pen(CurrentColor);
g.DrawLine(p, PrePoint, CurrentPoint);
pictureBox1.Invalidate(); // <--
}
Пишу по памяти не проверяя код. Попробуй так:
pictureBox1.Image.Save("test.jpg", ImageFormat.Jpeg);
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Добрый день, на сайте есть каталог, разбитый на категории с помощью папокНо каждый товар в каждой категории относится к конкретному типу
Есть бот для группы вконтакте, он отправляет сообщение пользователям когда они выходят или входят в группу, а так же пара простых командСитуация...
При нажатии на странички кнопки "отправить" запускается скрипт, но первый оператор после <?php уже не выполняется , например <?php echo "OK";, ничего...
При запуске composer --profile update, сам composer показывает, что потребляет не много памяти ([1381MB/207