在浏览器中显示多页 tiff
display multi page tiff in browser
我想知道是否有任何方法可以使用客户端编码(而非服务器端)在浏览器中以用户可以在页面之间导航的方式显示多页 tif 图像像常见的 jquery 照片库。我从 https://github.com/seikichi/tiff.js 中找到了 Tiff.js,但是这个库只提供下载 link 的多页 tiff,并且不在 html 中显示它。
我可以在服务器端使用 ImageMagic、LibTiff.Net 等库来完成,但我不想这样做,因为照片数量巨大,如果我这样做,它会消耗大量服务器 cpu
你知道任何替代解决方案吗?
浏览器不支持 tif 图像。
检查此 Wiki Link。
您必须生成 png 图像并将其存储并在浏览器中显示以获取 tif。
我也遇到过这个问题,我们无法转换图像。
您可以使用链接到的 tiff.js,查看演示,然后在 http://seikichi.github.io/tiff.js/multipage.html 查看源代码。
$(function () {
Tiff.initialize({TOTAL_MEMORY: 16777216 * 10});
var xhr = new XMLHttpRequest();
xhr.open('GET', 'images/multipage.tiff');
xhr.responseType = 'arraybuffer';
xhr.onload = function (e) {
var buffer = xhr.response;
var tiff = new Tiff({buffer: buffer});
for (var i = 0, len = tiff.countDirectory(); i < len; ++i) {
tiff.setDirectory(i);
var canvas = tiff.toCanvas();
$('body').append(canvas);
}
};
xhr.send();
});
将 'images/multipage.tiff' 替换为您的文件路径,它会将每个页面添加到 body 元素(如果您需要在其他地方使用,只需将 $('body') 替换为您的元素)。也适用于单个 tiff。
我想知道是否有任何方法可以使用客户端编码(而非服务器端)在浏览器中以用户可以在页面之间导航的方式显示多页 tif 图像像常见的 jquery 照片库。我从 https://github.com/seikichi/tiff.js 中找到了 Tiff.js,但是这个库只提供下载 link 的多页 tiff,并且不在 html 中显示它。
我可以在服务器端使用 ImageMagic、LibTiff.Net 等库来完成,但我不想这样做,因为照片数量巨大,如果我这样做,它会消耗大量服务器 cpu
你知道任何替代解决方案吗?
浏览器不支持 tif 图像。 检查此 Wiki Link。 您必须生成 png 图像并将其存储并在浏览器中显示以获取 tif。
我也遇到过这个问题,我们无法转换图像。
您可以使用链接到的 tiff.js,查看演示,然后在 http://seikichi.github.io/tiff.js/multipage.html 查看源代码。
$(function () {
Tiff.initialize({TOTAL_MEMORY: 16777216 * 10});
var xhr = new XMLHttpRequest();
xhr.open('GET', 'images/multipage.tiff');
xhr.responseType = 'arraybuffer';
xhr.onload = function (e) {
var buffer = xhr.response;
var tiff = new Tiff({buffer: buffer});
for (var i = 0, len = tiff.countDirectory(); i < len; ++i) {
tiff.setDirectory(i);
var canvas = tiff.toCanvas();
$('body').append(canvas);
}
};
xhr.send();
});
将 'images/multipage.tiff' 替换为您的文件路径,它会将每个页面添加到 body 元素(如果您需要在其他地方使用,只需将 $('body') 替换为您的元素)。也适用于单个 tiff。