C# сохранить System.Drawing.Graphics в.png
Я попробовал с графикой.Save();
Graphics newImage = Graphics.FromImage(bmp2);
newImage.DrawImage(bmp, 87, 37, 0, 0);
newImage.Save();
но когда я пытаюсь установить имя файла, как в Image.Save(@"HereGoesName.PNG"); Метод я получаю сообщение об ошибке "Нет перегрузки для метода" Сохранить "принимает 1 аргумент)"
и везде, где я искал, говорит, чтобы сделать следующее
Bitmap bitmap = new Bitmap(Convert.ToInt32(1024), Convert.ToInt32(1024), System.Drawing.Imaging.PixelFormat.Format32bppArgb);
Graphics g = Graphics.FromImage(bitmap);
bitmap.Save(@"HereGoesName.PNG", ImageFormat.Png);
Из того, что я понимаю, это для создания графики из растрового изображения здесь, и я пытаюсь сделать противоположное.
2 ответа
Решение
Вам нужно позвонить Save
на растровом изображении, а не на графике:
Graphics newImage = Graphics.FromImage(bmp2);
newImage.DrawImage(bmp, 87, 37, 0, 0);
bmp2.Save("HereGoesName.PNG", ImageFormat.Png);
Это просто: ваша линия Graphics newImage = Graphics.FromImage(bmp2);
создает графический объект со ссылкой на bmp2
образ.
Все действия рисования рисовать прямо на вашем bmp2
Битовая карта
Таким образом, вы можете просто сохранить ваше измененное изображение с помощью:
bmp2.Save(@"foo.png", ImageFormat.Png);