我有 3D WPF 视觉对象,我想将其传递到 Excel 单元格(通过剪贴板缓冲区)。
使用“正常” BMP 图像它可以工作,但我不知道如何转换RenderTargetBitmap
.
我的代码如下所示:
System.Windows.Media.Imaging.RenderTargetBitmap renderTarget = myParent.GetViewPortAsImage(DiagramSizeX, DiagramSizeY);
System.Windows.Controls.Image myImage = new System.Windows.Controls.Image();
myImage.Source = renderTarget;
System.Drawing.Bitmap pg = new System.Drawing.Bitmap(DiagramSizeX, DiagramSizeY);
System.Drawing.Graphics gr = System.Drawing.Graphics.FromImage(pg);
gr.DrawImage(myImage, 0, 0);
System.Windows.Forms.Clipboard.SetDataObject(pg, true);
sheet.Paste(range);
我的问题是gr.DrawImage
不接受 aSystem.Windows.Controls.Image
或 a System.Windows.Media.Imaging.RenderTargetBitmap
; 只有一个System.Drawing.Image
。
如何将 转换Controls.Image.Imaging.RenderTargetBitmap
为Image
,或者有更简单的方法吗?