微软将推出Silverlight 3 新特性前瞻

7月10日,微软将推出Silverlight 3Expression Studio3设计平台,在新版本发布之前,我们来看一看Silverlight 3的新特性。

Video/Audio

Silverlight除VC-1外还支持H.264视频格式。这是YouTube等使用的新兴业界标准格式,并在很多设备上有硬解码。Silverlight也支持AAC音频。二者都以MP4容器格式实现(如.MP4或.M4A格式文件)。

另外还支持F4v, Adobe的高清格式. 可惜的是在3.0这个版本中Silverlight还不支持Camera. 听说下一个版本会加入, 大家还需等待一年.

GPU Acceleration

这是Silverlight 3运行时中opt-in的特性,in-browser和out-of-browser都可以。在HTML中的Silverlight tag中,添加一个EnableGPUAcceleration=true参数来启用GPU加速。

3D Support

Silverlight 3带有透视3D,对于一个父元素,你使用一个Projection attached property,如:

<Border.Projection>
   <PlaneProjection x:Name=”p3” RotationY=”-30” />
</Border.Projection>

这个perspective 3D也只是将平面对象转换成立体的对象, 而非真正的3D渲染引擎. 而Silverlight中还没出现Flash中的pv3d一类的3D engines.

 

Animation Easing新加入了很多easing的function, 和Flash里的Tween类似.

Custom Dialogs

Silvelright 3现在支持SaveFileDialog。出于安全原因,我们不返回路径给开发者,相反,你可以从结果中打开文件:

mySaveFileDialog.Show();
if (mySaveFileDialog == true)
  return mySaveFileDialog.OpenFile();

关于上传下载FlashPlayer10有一些新的更新. 另外我觉得如果禁止修改的, 打开文件也可以加上.

Effects

Silverlight 3中引入的Effects提供低级手段来影响视觉效果。我们内置提供阴影和模糊两个效果,你也可以创建自己的效果。自定义效果以HLSL Shaders来实现——用DirectX SDK工具编译成byte code供Silverlight 3使用。Shaders允许开发者在UI元素渲染前修改每个像素。

如果Silverlight也支持bitmapdata的话, 那么Effects的加入会对它的绘图功能提高很多.

Pixel和Media APIs

你现在可以从位图中读/写像素。这个功能有两种使用方式:in-memory位图或保存visual到位图。同时支持的还有raw audio/video API实现动态声音生成,自定义视频codec,或者alpha video channels。

in-memory位图或保存visual到位图, 这个就是微软学习FlashPlayer的bitmap的方式加入的新功能, 效率问题还没有测试.
另外动态声音生成在新版本的FlashPlayer 10 也加入了.

Local Messaging

在多个Silverlight插件间传递消息曾是个挑战。现在我们支持类似”命名管道”的消息,不但垮同一网页上的对象,甚至跨多浏览器的多个Silverlight实例。例如一个Chrome实例中的Silverlight和Firefox中的另一个实例通信。

Flash中用localConnection来实现, 另外Flash中的localConnection还有垃圾收集的特别功效, 这点微软好像没有加入哟 :).

Out of Browser

通过一个manifest对每个应用程序启用(标准Silverlight 3模板中就有这个段落,你只要uncomment它)。一个用户可以右击Silverlight内容,或者点击应用里的一个按钮来启动Silverlight out-of-browser应用。

这个功能很不错, 可以让用户将web应用部署到本地, 增加用户对当前web应用的依赖. 不知道Adobe会不会加上, 其实就是在它的swf文件和AIR文件中做一下关联, 在发布的时候同时发布两个文件, 然后用户可以将这两个文件同时部署到Server side上. 就类似Flex中的view source功能一样.

Tooling

Silverlight 3工具会包含新的压缩算法,XAP文件的大小会缩小10~30%。

你可能感兴趣的:(silverlight)