![](/icons/59789yi.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou2.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou2.gif)
![](/icons/59789de.gif)
![](/icons/59789yi.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789yinwei.gif)
![](/icons/59789de.gif)
![](/icons/59789dou2.gif)
![](/icons/59789dou2.gif)
和导出整图不
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
<MultiScaleImage
x:Name="msi"
ViewportWidth="1.0"
Source="/XXXX/info.bin" MouseLeftButtonDown="msi_MouseLeftButtonDown" MouseLeftButtonUp="msi_MouseLeftButtonUp" MouseMove="msi_MouseMove"/>
而应该将info.bin替换成:items.bin![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou2.gif)
这时运行你
![](/icons/59789de.gif)
![](/icons/59789chengxu.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou2.gif)
![](/icons/59789yi.gif)
![](/icons/59789de.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789yi.gif)
Source:即DeepZoomComposer导出
![](/icons/59789de.gif)
SubImages:子图片
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou2.gif)
![](/icons/59789de.gif)
![](/icons/59789dou2.gif)
UsingSprings:是否启用其默认动画(就是那中很飘逸
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
Viewport: 视口位置(可以简单理解成眼睛所在位置
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
ViewportWidth:视口宽度
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
AspectRatio:宽高比
![](/icons/59789dou2.gif)
ElementToLogicPo
![](/icons/59789int.gif)
![](/icons/59789kh.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
LogicToElementPo
![](/icons/59789int.gif)
![](/icons/59789kh.gif)
![](/icons/59789dou2.gif)
ZoomAboutLogicPo
![](/icons/59789int.gif)
![](/icons/59789dou.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou2.gif)
MotionFinished事件:动画结束(或者说当你操作图片或子图后其运动结束)
有关子图:
每个子图是
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
如何移动子图位置:
你可以通过指定该子图
![](/icons/59789de.gif)
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
subImage.ViportOrgin =
![](/icons/59789new.gif)
![](/icons/59789int.gif)
所以如果你想将子图像WPF中
![](/icons/59789yi.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou.gif)
![](/icons/59789yi.gif)
![](/icons/59789yi.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou2.gif)
如何缩放子图:
你可以通过子图
![](/icons/59789de.gif)
![](/icons/59789dou.gif)
![](/icons/59789dou2.gif)
如何显示或隐藏子图:
没有visibility或相关属性
![](/icons/59789dou.gif)
![](/icons/59789dou2.gif)
如何获取指定子图
![](/icons/59789de.gif)
参考这个思路方法:
private Rect GetSubImageRect(MultiScaleImage msi,
index)
{
(index < 0 || index >= msi.SubImages.Count)
{
Rect.Empty;
}
MultiScaleSubImage image = msi.SubImages[index];
double scaleBy = 1 / image.ViewportWidth;
Rect(-image.ViewportOrigin.X * scaleBy,
-image.ViewportOrigin.Y * scaleBy,
scaleBy,
(1 / image.AspectRatio) * scaleBy);
}
如何根据X
![](/icons/59789dou.gif)
![](/icons/59789de.gif)
参考这个思路方法:
private
GetImageIndexFromPosition(MultiScaleImage msi, Po
pt)
{
pt = msi.ElementToLogicalPo
(pt);
for (
i = 0; i < msi.SubImages.Count; i
)
{
MultiScaleSubImage image = msi.SubImages[i];
double scaleBy = 1 / image.ViewportWidth;
Rect imageRect = this.GetSubImageRect(msi, i);
(imageRect.Contains(pt))
{
i;
}
}
-1;
}
最新评论