Javascript 得到';IndexSizeError';使用Openseadragon在大型图像上使用IE 11/Edge
我使用Openseadragon来显示大型图像,其中一些图像显示了IE 11和Edge的“SCRIPT5022:IndexSizeError”错误消息 它适用于小图像(1024x656像素),但对于任何较大的图像(例如2981x4123)都会失败。任何其他浏览器在任何情况下都可以正常工作 我使用的是“传统图像金字塔”类型的源 我的Openseadragon配置:Javascript 得到';IndexSizeError';使用Openseadragon在大型图像上使用IE 11/Edge,javascript,internet-explorer,html5-canvas,microsoft-edge,openseadragon,Javascript,Internet Explorer,Html5 Canvas,Microsoft Edge,Openseadragon,我使用Openseadragon来显示大型图像,其中一些图像显示了IE 11和Edge的“SCRIPT5022:IndexSizeError”错误消息 它适用于小图像(1024x656像素),但对于任何较大的图像(例如2981x4123)都会失败。任何其他浏览器在任何情况下都可以正常工作 我使用的是“传统图像金字塔”类型的源 我的Openseadragon配置: viewer = OpenSeadragon({ id: 'openseadragon', too
viewer = OpenSeadragon({
id: 'openseadragon',
toolbar: 'viewer-toolbar',
maxZoomLevel: 5,
minZoomLevel: 0,
preload: true,
sequenceMode: false,
tileSources: SOURCE,
crossOriginPolicy: 'Anonymous',
// buttons
zoomInButton: 'zoom-in',
zoomOutButton: 'zoom-out',
showRotationControl: true,
rotateLeftButton: 'rotate-left',
rotateRightButton: 'rotate-right',
homeButton: 'home',
showFullPageControl: false,
rotateleftButton: 'rotate-left',
rotaterightButton: 'rotate-right',
// gestures
gestureSettingsMouse: {
clickToZoom: false,
dblClickToZoom: true,
pinchToZoom: true,
pinchRotate: true
},
gestureSettingsTouch: { pinchRotate: true }
});
larges图像的源代码(失败):
较小图像(工作)的源代码:
如果drawImage参数错误,但OpenSeadragon的值是好的,我发现了这个问题(以及IE11/Edge(显然在最新版本的Edge中得到了修复),因此它适用于小图像,所以应该适用于任何图像?)
我尝试了另一种源类型(图像平铺源),但出现了相同的错误
如果我禁用canvas并改用img(选项中的useCanvas:false),它会起作用,但这不是我的解决方案(它破坏了我的查看器实现).这看起来可能与OSD有关,但可能不完全相同。我假设您使用的是最新版本的OSD?这是另一个相关问题,但很久以前就被合并了:。感谢您的回复!我已升级到OSD 2.4.0,问题已得到解决。问题已解决!太棒了!感谢您让我知道:)
var SOURCE = [
{
type: 'legacy-image-pyramid',
levels: [{
url: 'https://rgw.atolcd.com/swift/v1/sillon_container_test/entrepot/B574636101_Prev36_18930411_0001.jpg',
height: 4123,
width: 2981
}]
}
];
var SOURCE = [
{
type: 'legacy-image-pyramid',
levels: [{
url: 'https://rgw.atolcd.com/swift/v1/sillon_container_test/entrepot/carte1.jpg',
height: 656,
width: 1024
}]
},
];