vb.net – 如何在Silverlight 3.0中使用SaveFileDialog保存Bitma
如何将Silverlight中的WriteableBitmap保存到文件系统中,我不确定如何处理FileStream以使其工作,它可以是Bitmap,PNG,Jpeg格式等,只要不需要商业库.
是否有可能做到这一点? 这是我对SaveDialog的调用,如下: Dim SaveDialog As New SaveFileDialog If SaveDialog.ShowDialog Then Try Using FileStream As Stream = SaveDialog.OpenFile ' Save Image File Code Here End Using Catch ex As Exception End Try End If 编辑 添加了WritableBitmap,因为这是我的XAML写的内容,我只需要 以下是我将Pixel Stream写入a的示例代码 Dim Image As Imaging.WriteableBitmap = _Style.Image Dim Area As Integer = Image.PixelWidth * Image.PixelHeight For Raster As Integer = 0 To Area - 1 Dim Pixel As Integer = Image.Pixels(Raster) Dim Bytes() = BitConverter.GetBytes(Pixel And &HFF) FileStream.Write(Bytes,4) Next
有几个开源编码器:
FJCore:http://code.google.com/p/fjcore/ Joe Stegman的PNG编码器:http://blogs.msdn.com/jstegman/archive/2008/04/21/dynamic-image-generation-in-silverlight.aspx FreeImage:http://freeimage.sourceforge.net/ 您可以使用其中任何一种来编码各种格式.这是一篇关于保存WriteableBitmap的帖子: http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-1320-The-Bitmap-API-2F00-WriteableBitmap.aspx 更新: http://geekswithblogs.net/braulio/archive/2009/07/12/export-canvas-to-png-and-save-it-in-your-local.aspx 看起来您必须将Canvas的内容保存到文件中.您应该能够修改样本以保存JPEG或其他格式. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |