快速浏览Silverlight3 beta:鸡肋一样的WritableBitmap
之前在网上有讨论 使用Silverlight3 beta的WritableBitmap进行截图 的问题。但
结果也是很不明确,起码就目前看来,使用WritableBitmap的Render方法对XAML文件
中UI元素生成位图,但还不支持将获取出来的位图以文件流的文件保存到本地(因为我
开始想用SaveFileDialog来做这事)。原因就是在调用Render方法之后,就不可以再访
问WritableBitmap中的Pixel(数组类型)了,系统会报错,如下图:
目前看来只能像那个老外所说的那样,把希望寄托在RTM版了。
have Pixel access after calling Render(). But maybe by final RTW (sorry
I kept saying RTM, I should really be saying RTW!)
上面的问题还直接造成了无法把WritableBitmap中的数据发送到WEB-Serivce,
这也就是说不支持服务器端的通信。
当然我也尝试节使用LocalMessage,但目前它只能传递字符串对象,而无法传
递object对象,所以WritableBitmap就更谈不上了。
另外还有一个问题就是如果使用下面代码:
(int)scene.RenderSize.Width, (int)scene.RenderSize.Height, PixelFormats.Bgr32);
_reflectedImage.Render(scene, new TranslateTransform());
Image img = new Image() { Source = _reflectedImage };
将BitMap实例化到一个Image对象中时,在运行完第三行代码后,我们会发现其
img.Source的值依旧为空,如下图:
从这一点来看,想把WriteableBitmap转成Image对象,然后再将Source转成 Byte
这条路也走不通。
本人之前想使用 WritableBitmap来做一个远程截图的DEMO,因为上述的原因而无法
实现。不过就目前Silverlight3的发展而言,WritableBitmap还是有后续完善的可能性的。
最后推荐一个WritableBitmap的DEMO,取自这篇BLOG:)
不过说句实在话,就目前我在网上搜集的关于WritableBitmap的DEMO而言,对我们
开发实际应用是没什么太多帮助,所以我感觉还是再等下个版本出来之后再涉略这方面的内
容会更好一些,必定WritableBitmap它目前只是个半成品。
好了,今天的内容就先到这里了。
原文链接: http://www.cnblogs.com/daizhj/archive/2009/04/15/1436298.html
作者: daizhj, 代震军
Tags: silverlight,WritableBitmap,截图,snap
网址: http://daizhj.cnblogs.com/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)