首页 > 新闻系统 > 编程天地 > 文章正文

Silverlight 1.0 架构

2008-01-25 11:39:20 来源:ITPUB论坛 作者: 点击:
Microsoft Silverlight 是一种跨浏览器、跨平台的插件,用来在网络上发布具有丰富交互性的内容。

参见 动画概述。

  图像缓存

  当图像引用一个 URL 时,图像会下载到本地,并以解码后的形式进行缓存。如果你在你的程序内多次引用这张图片,它将从缓存内提取,并迅速使用。不同的插件引用同一图像时,则是利用浏览器的缓存,但每个 Silverlight 程序都需要解码一次。

  为了达到最佳效果,要下载的图像的解析度应当图像的显示尺寸接近。如果图像的解析度远大于显示尺寸,将采用双线性过滤,防止显示变形。如果图像的解析度远小于显示尺寸时,图像将变得模糊。

  此外,选择图像的解析度与显示尺寸解决将下载次数减少到最小。如果不得已需要缩放特效,请在服务器上存放多个解析度的图像,在动画的过程中动态切换不同的图像源。

  文字引擎

  文字引擎将在TextBlock内按流的方式,经过简单格式化和为了精确的固定格式的显示而明确定位字形后显示文本字符串,它采用系统指定的字体(这值限于各种平台上都有的字符集)或者采用指定的字体 URI,它会指向一个 TrueType 字体。

  字形缓存

  字形缓存通常由文本引擎使用,从字体文件产生字形以便展现。为了每一个特定目标方案的可读性,这种字形是经过优化的,因此,在文字显示的第一帧或者缩放文字时,需要进行字形的初始化。一旦初始化完毕,文字的滚动或者转换就不需要再下载了。

  如果你的程序需要动态按比例变化大块文字,更好的办法是选用矢量的表现方法。

  媒体管道

  视频管道通过持续的HTTP下载或者HTTP流(WMS服务器)的方式得到内容,调用解码器解码视频,采用展现系统和音频引擎显示出来。

  视频可以反复显示,缩放到全屏,在不同形状的路径、旋转等效果上由VideoBrush在不同的位置使用。

  如果你的程序从窗口模式转换到全屏显示,我们推荐使用视频刷,在全屏模式下引用前面正在播放的媒体元素,这可确保这种转换是无缝的,并且不需要重新缓冲。

  如果程序的内容必须对视频中的事件做出反应,你可以在视频流里插入标记,它将在程序里触发。

  关于在应用中使用媒体的更多信息,请参见 媒体概述。

  解码器

  Silverilght 1.0 支持 PNG 和 JPG 格式的图像, Windows Media Video (WMV)格式的视频文件和 Windows Media Audio (WMA) 和 MP3 格式的音频文件。

  下载器和打包

  XAML、图像、字体或者其它数据,能够以压缩(zip)文件的格式打包,使用Downloader对象按需下载。我们建议你在低速的网络带宽下清空浏览器缓存测试你的程序,以确保有效的下载性能。如果你的程序的初始化加载时间很长,你应当提供一个正在加载的画面。

  Ink 支持

  Ink 支持指的是使用画笔、触摸屏或者鼠标作为输入源进行手写或者手画内容。Silverlight 提供一个 InkPresenter 对象,接收基于Ink的输入。要识别文字,请把数据发送到服务器。例子可以从 Silverlight Gallery中找到。关于这一特性的更多信息,参见 Silverlight 中的 Ink 支持。

9 7 3 1 2 3 4 8 :

精彩推荐
焦点大图推荐
本类热门文章

论坛美图

本周软件下载排行

广告联系 | 版权说明 | 意见建议 | 加入收藏 | 军网站群 [ 军软件园 - 军软件商城 - 军软件园论坛 ]

电信与信息服务业务经营许可证:京ICP证050203