OpenSeadragonselection:动态切换选择状态

OpenSeadragonselection: Toggle selection state dynamically

我目前正在使用 OpenSeadragon 和选择插件 (https://github.com/picturae/openseadragonselection) 实现扫描页面的查看器,以使用户能够 select 页面的一部分。

我已经为缩放 in/out 添加了自定义控件并切换是否可以 select 或者是否应该缩放图像。到目前为止一切顺利。

但我在动态更改 select离子状态时遇到问题。

我按照以下方式初始化查看器:

var options = {
    showNavigator: true,
    toggleButton: 'toggle-selection',
    zoomPerClick: 2.0,
    element: 'myElement',
    url: <url to image>
};

var viewer = OpenSeadragon(options);

这如我所料初始化了查看器,一切都很好。我可以单击带有 id="toggle-selection" 的元素到 enable/disable selection 模式。

我想将 Angular ng-click 处理程序绑定到某个元素,以切换查看器的 selection 模式。但是我不知道如何更改选项,然后让查看器实际更新状态。

您应该像这样初始化选择插件:

var selection = viewer.selection(options);

然后您可以使用以下任一方法更改选择状态:

selection.enable();
selection.disable();
selection.toggleState();

或者,如果您无法保存选择对象并在需要的地方访问它,您仍然可以从查看器中获取它而无需像这样传递选项:

var selection = viewer.selection();

但您需要确保选择是在此之前启动的。否则您将创建 2 个选择实例并遇到问题。

您还可以使用布尔值 属性 selection.isSelecting

检查是否启用了选择