UPDATE: У меня есть загрузка изображений, но это всегда скачивание пустое:Загрузка изображения с холста; не может получить данные
function seadragon(){
var url = "http://26.img.americanancestors.org/8e09e1f1-e1e9-4414-a0f5-86a6f09454a2.xml";
var viewer = OpenSeadragon({
id: "databaseviewer",
prefixUrl: "../../Scripts/openseadragon/images/",
tileSources: url,
maxZoomLevel: 20
});
viewer.addHandler('open', function() {
var img = viewer.drawer.canvas.toDataURL("image/png");
console.log(img);
var downloadlink = document.getElementById("download");
downloadlink.href = img;
downloadlink.download = 'SeadragonImage';
});
}
seadragon();
-------- конец обновление
У меня есть страница, которая отображает глубокую масштабировать изображения с помощью Open Seadragon.
Here is a fiddle, чтобы воспроизвести проблему.
У меня есть ссылка для скачивания и ссылка для печати, хотя сейчас они оба делают то же самое. Я пытаюсь получить imgurl; как только у меня есть, я думаю, что знаю, как его загрузить, но $ (canvas) .toDataURL() не работает.
function seadragon(){
var url = "http://26.img.americanancestors.org/8e09e1f1-e1e9-4414-a0f5-86a6f09454a2.xml";
var viewer = OpenSeadragon({
id: "databaseviewer",
tileSources: url,
maxZoomLevel: 20
});
}
$("a").on("click", function() {
var canvas = $("canvas");
console.log(canvas);
imgurl = $(canvas).toDataURL();
console.log(imgurl);
});
seadragon();
Консоль.log проверяет, что у меня есть объект canvas на моей странице. Почему я не могу получить URL-адрес изображения?
Я также попытался получения изображения в функции Seadragon:
function seadragon(){
var url = "http://26.img.americanancestors.org/8e09e1f1-e1e9-4414-a0f5-86a6f09454a2.xml";
var viewer = OpenSeadragon({
id: "databaseviewer",
tileSources: url,
maxZoomLevel: 20
});
var img = viewer.drawer.canvas.toDataURL("image/png");
console.log(img);
}
но консоль говорит «Uncaught TypeError: Не удается прочитать свойство„холст“пустому