是的,图像工具库有一种方法可以在 png/jpg 等中执行此操作。
http://imagetools.codeplex.com/
您也可以使用 RenderTargetBitmap - http://msdn.microsoft.com/en-us/library/system.windows.media.imaging.rendertargetbitmap.aspx
这是一个如何将文件保存到磁盘的示例。你只能从对话框中做到这一点
http://www.silverlightshow.net/items/Using-the-SaveFileDialog-in-Silverlight-3.aspx
编辑 - 示例代码
打电话
var objImage = new WritableBitmap(MyElement, MyElement.RenderTransform);
var bytData = objImage.ToPng();
扩展方法
using ImageTools.IO.Png;
using ImageTools;
public static byte[] ToPng(this WriteableBitmap Image)
{
byte[] bytResult;
using (MemoryStream objPngStream = new MemoryStream())
{
PngEncoder objPngEncoder = new PngEncoder();
objPngEncoder.Encode(Image.ToImage(), objPngStream);
objPngStream.Seek(0, SeekOrigin.Begin);
bytResult = objPngStream.ToArray();
objPngStream.Close();
}
return bytResult;
}