В моей программе есть сплитконтейнер в форме.На Panel1 есть кнопка, которая при нажатии должна сохранить панель 2 как изображение (в идеале, jpg).У меня есть пара проблем с кодом, который я использую.
private void btnSave_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(splitContainer1.Panel2.Width * 2, splitContainer1.Panel2.Height);
splitContainer1.Panel2.DrawToBitmap(bmp, splitContainer1.Panel2.Bounds);
bmp.Save(@"C:\Test.jpg",System.Drawing.Imaging.ImageFormat.Jpeg);
}
Вот вопросы с моим кодом, которые мне интересны.
- , если я использую его какя правильно сохраняю jpg файл, но он содержит дополнительный черный цвет по сторонам.
- Если я изменю последнюю строку кода, чтобы пропустить System.Drawing.Imaging.ImageFormat.Jpeg, я получукартина с двумя прозрачными коробками с обеих сторон, что все еще не то, что я хочу.(Они понятны, но они все еще там).
Как я могу сохранить только jpg-файл без дополнительной области вокруг панели?
РЕДАКТИРОВАТЬ: Несколько человек указали на мой вызов Splitcontainer1.panel2.width* 2. Если я не умножу ширину на два, я получу только половину фактической панели2, как показано ниже, и у нее все еще есть нежелательные черные полосы / прозрачные полосы: