Fuz*_*ans 4 c# system.drawing image panel
我有一个有2个面板的表格.我正在尝试将Panel2的内容保存为图像.我看到一个讨论使用屏幕截图的线程来执行此操作,但我再也找不到该线程了.另请阅读使用DrawToBitMap方法,但它来自visual studio 2005信息,不确定它是否是最新或最合适的解决方案.那么你建议将我的Panel2保存为图片,最好是jpg?
更新:我为DrawToBitMap实现了下面推荐的代码,但它保存了我的panel2的一半(左半部分,如果这有所不同).因为它保存了我的panel2的一半,所以我将宽度调用乘以'2'以使其保存完整的表单.一种奇怪的东西,对我来说没有意义,因为面板2的宽度应该是整个面板而不是它的一半?
//multiplies the width of panel2 call by 2 to make it save the full panel
Bitmap bmp = new Bitmap(splitContainer1.Panel2.Width * 2, splitContainer1.Panel2.Height);
splitContainer1.Panel2.DrawToBitmap(bmp, splitContainer1.Panel2.Bounds);
bmp.Save(@"C:\Test.bmp");
Run Code Online (Sandbox Code Playgroud)
Control.DrawToBitMap
.Net 4仍然支持.有以下警告.
从上面的链接:
DrawToBitmap方法具有以下限制:
编辑添加的示例和图像:
Bitmap bmp = new Bitmap(panel1.Width,panel1.Height);
panel1.DrawToBitmap(bmp, panel1.Bounds);
bmp.Save(@"C:\Temp\Test.bmp");
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
11287 次 |
最近记录: |