Ниже приведен мой код для изменения моей информации о панели в растровое изображение. Bitmap сначала генерируется моей информацией о панели, а затем сохраняется как файл изображения. Я подтвердил, что ширина, высота и границы представляют собой правильную информацию, предоставленную моей панелью. В настоящее время я не уверен, почему мой результат bmp/jpeg-файл отличается от изображения на моей панели.C# Сохранение изображения панели дает разные результаты
// сохранение растрового функция
Bitmap bmp = new Bitmap(panel1.ClientSize.Width, panel1.ClientSize.Height);
Debug.WriteLine("bounds: " + panel1.ClientRectangle);
this.panel1.DrawToBitmap(bmp, panel1.ClientRectangle);
bmp.Save(@"C:\Documents and Settings\Flaw\Desktop\Test.bmp", ImageFormat.Bmp);
// функции рисование
System.Drawing.Graphics graphicsObj;
graphicsObj = this.panel1.CreateGraphics();
Pen myPen = new Pen(System.Drawing.Color.Black, 5);
graphicsObj.Clear(Color.White);
//graphicsObj.DrawLine(myPen, 50, 50, 100, 100);
if (bCircle)
{
graphicsObj.DrawEllipse(myPen, x, y, 100, 100);
}
else if (bSquare)
{
graphicsObj.DrawRectangle(myPen, x, y, 100, 100);
}
Результата я получаю при сохранении растрового изображения.
Образ, который находится на моем панели1 (обрезанные из моего окна Form)
Я обновил код, как: Bitmap BMP = новый Bitmap (panel1.ClientSize .Width, panel1.ClientSize.Height); Debug.WriteLine ("bounds:" + panel1.ClientRectangle); this.panel1.DrawToBitmap (bmp, panel1.ClientRectangle); bmp.Save (@ "C: \ Documents and Settings \ Flaw \ Desktop \ Test.bmp", ImageFormat.Bmp); Но теперь результат представляет собой сплошной серый цвет, такой же, как цвет окон. – user3235731
@ user3235731 Я не знаю, что в вашей панели. Вам нужно документировать это. – LarsTech
Извините, я получу редактирование в главном сообщении – user3235731