我正在尝试实现以下接口:1)生成各种事件(滚动,单击等)的自定义UI设备,以及2)OpenSeadragon查看器,以便可以使用外部设备导航图像。设备发送可以在浏览器(当然是javascript)中检测到的事件。在线文档显示了如何拦截鼠标/键盘事件以提供自定义处理,但是我没有看到一种明显的方式来以编程方式触发我想要的行为(缩放,滚动),而不是直接通过标准UI系统(鼠标,键盘)触发)。
我的问题是,钩入OpenSeadragon查看器以触发滚动或缩放行为的正确方法是什么?
最佳答案
您可以使用viewport.panBy
和viewport.zoomBy
方法。
参见:http://openseadragon.github.io/docs/OpenSeadragon.Viewport.html
var viewer = new OpenSeadragon({...});
viewer.addHandler("open", function() {
viewer.viewport.panBy(...);
viewer.viewport.zoomBy(1.1);
});
默认值是1.1(放大)和0.9(缩小)。
对于平底锅,您可能需要研究以下功能:https://github.com/openseadragon/openseadragon/blob/master/src/viewer.js#L2398