Deep Zoom 本来是微软
开发团队为Silverlight丰富客户端做图片的展示做的一个工具,是silverlight的特色功能之一,可以产生非常好的效果,随便WP7使用Silverlight 技术,这一功能也移植到移动设置。这个功能现在应该算是phone7Ui的主要功能了吧 。因为phone7的很多Ui就是DeepZoom开发的,另外在MIX10大会有展出的漫画阅读软件也是由DeepZoom开发的,由此也可以看的出这个功能在phone7上的重要性。在
Windows Phone开发中DeepZoom如何使用呢?
1、要开发DeepZoom首先需要在
Windows Phone开发中使用DeepZoomComposer这个在expression下的工具来生成deepzoom图集 。
2、新建windowsphoneapplication,在xaml
设计窗口加入以下语句:
在Windows Phone7中只能用MultiScaleImage来展示DeepZoom图集 。
3、将
Windows Phone开发中DeepZoomComposer生成的图集加入到工程中 。
4、加入如下代码,以显示图集:
this.msi.ImageOpenSucceeded+=newRoutedEventHandler(msi_ImageOpenSucceeded);
voidmsi_ImageOpenSucceeded(objectsender,RoutedEventArgse)
{
Pointpoint=this.msi.ViewportOrigin;
msi.ViewportWidth=1;
msi.ViewportOrigin=newPoint(0,-0.3);
}
this.msi.Source=newDeepZoomImageTileSource(newUri ("Assets/dzc_output.xml",UriKind.Relative));
5、要让图集移动,缩放,还需要加入MouseMove,LButtonDown,LbuttonUp的响应 。
privatevoidZoom(doublezoomnew,Pointp)
{
if(zoomnew<0.5)
zoomnew=0.5;
msi.ZoomAboutLogicalPoint(zoomnew/zoom,p.X,p.Y);
zoom=zoomnew;
}
Windows Phone开发工程新建完后,运行一下,看看效果吧。右方有个按钮,点击它添加图片,添加完后点击中上方Compose 按钮,将你的图片拖放到一个你觉得满意的地方,看看是不很有趣!