将图像显示为 .tiff 或 .tif

Deh*_*ost 5 html javascript tiff canvas

不知道怎么做这个过程,咨询过但是没有达到,如果能帮上忙。

探查发生了什么事情是这样的:

    var reader = new FileReader();
reader.onload = function(event) {
    var dataUri = event.target.result,
        context = document.getElementById("mycanvas").getContext("2d"),
        img     = new Image();

    // wait until the image has been fully processed
    img.onload = function() {
        context.drawImage(img, 100, 100);
    };
img.src = 'url_imagen';
};

reader.onerror = function(event) {
    console.error("File could not be read! Code " + event.target.error.code);
};

reader.readAsDataURL(file);
Run Code Online (Sandbox Code Playgroud)

所有的贡献都实现了,但尝试看看它是否有效。

指向沙漠,分辨率为 jpg 的扑克图像出现以下错误:

TIFFReadDirectory:警告,遇到标签为 347 (0x15b) 的未知字段。tiff_min.js (línea 103) 1.tiff:未配置 JPEG 压缩支持。tiff_min.js (línea 103) 1.tiff:抱歉,未配置请求的压缩方法。tiff_min.js (línea 103) 未捕获异常:[object Object]

探针代码是这样的:

Tiff.initialize({TOTAL_MEMORY: 19777216 * 10});
        var xhr = new XMLHttpRequest();
        xhr.responseType = 'arraybuffer';
        xhr.open('GET', url);
        xhr.onload = function (e) {
            var tiff = new Tiff({buffer: xhr.response,height:450});
            var canvas = tiff.toCanvas();
            //canvas.width = 700;
            //canvas.height = 450;
            div.html(canvas);
            msn('Imagen cargada', "Imagen cargada con exito.");
        };
        xhr.send();
Run Code Online (Sandbox Code Playgroud)

cvi*_*ejo 8

正如这里这里所回答的,这一切都归结为浏览器支持。

但是,您可以将图像作为二进制数据获取并使用库显示:

https://github.com/seikichi/tiff.js

https://code.google.com/p/tiffus/

https://github.com/GPHemsley/tiff-js