2016-09-16 51 views
0

嗨,我希望有人能帮助指向我正确的方向,我可能会解决这个问题。规模和绘制图像在一个更大的画布内

我有一个空白图像(白色),它是3000x1500这是一个画布,然后我有一个图像,可以是任何大小和任何方向。我需要做的是将这张图片放大以尽可能地放在空白的白色画布中,并将其居中。如果无法缩放图像以修复确切的画布,我希望在最终图像的顶部或底部看到白色空白。

任何人都可以建议我应该研究,我将如何去在C#WPF中绘制另一个图像和任何可能已经存在,我可以用来实现此目的。

我忘了提,这将需要输出为位图,以便它可以保存到磁盘

回答

0

查一查视框。 ViewBox会根据拉伸参数自动缩放其单个子元素。

0

您只需将图像控件放入适当大小的具有白色背景的网格中,并将其Stretch属性设置为Uniform即可。不需要Viewbox。

<Grid Width="3000" Height="1500" Background="White"> 
    <Image Source="<path to image file>" Stretch="Uniform"/> 
</Grid> 
+0

我忘了提及我需要将它导出到JPEG,所以这需要在后面的代码中完成。已更新我的问题 – NathanJ

+0

您可以将网格绘制到RenderTargetBitmap。 – Clemens