Openseadragon 在后台下载

Openseadraon download in background

我正在尝试使用 openseadragon (OSD) 2.2.1 版下载完整尺寸的深度缩放图像。 我的图像在服务器上,我可以使用 OSD 打开它们。我的下载步骤是:

  1. 使用
  2. 将图像列表加载到正文中
  3. 使用复选框检查要下载的图像
  4. 点击'Download'按钮下载

下载功能具有以下功能:

OSD 查看器源的全尺寸:

$("#OSDelement").attr("style", "height: " + viewer.world.getItemAt(0).source.dimensions.y / window.devicePixelRatio) + "px;" +
 "width: " + (viewer.world.getItemAt(0).source.dimensions.x / window.devicePixelRatio) + "px");

网站的示例模型是:

当浏览器的选项卡处于活动状态时,一切都可以正常下载(下载需要时间,但它正在完成它的工作)。问题是我正在尝试在 'background' 中下载。当我转到不同的选项卡时,OSD 磁贴停止加载。当浏览器的选项卡未处于活动状态时,如何强制打开 OSD 并加载图块? 有时,当每个浏览器会话的选项卡未处于活动状态时它会开始下载,但根本不绘制图块。它下载空文件,因为查看器上没有图块。完全没有错误。

请给我一些想法。谢谢!

它在后台不起作用的原因是它使用了 requestAnimationFrame,当您的选项卡在后台时它会暂停。一种解决方法是执行以下操作:

OpenSeadragon.requestAnimationFrame = function(callback) {
    setTimeout(callback, 16);
};