Load a tiff file using JQuery and Javascript? - Stack Overflow
Wed Sep 14 2022 06:49:11 GMT+0000 (Coordinated Universal Time)
Saved by
@kareed
#javascript
$(document).ready(function() {
var fileTypes = ['jpg', 'jpeg', 'png', 'tiff', 'tif', 'pdf']; //acceptable file types
$("input:file").change(function(evt) {
var parentEl = $(this).parent();
$(this).parent().find("img.preview").remove();
$(this).parent().find("canvas.preview").remove();
var tgt = evt.target || window.event.srcElement,
files = tgt.files;
// FileReader support
if (FileReader && files && files.length) {
var fr = new FileReader();
var extension = files[0].name.split('.').pop().toLowerCase();
var tif = false;
var pdf = false;
if (extension == "tiff" || extension == "tif")
tif = true;
fr.onload = function(e) {
success = fileTypes.indexOf(extension) > -1;
if (success) {
if (tif) {
//Using tiff.min.js library - https://github.com/seikichi/tiff.js/tree/master
console.debug("Parsing TIFF image...");
//initialize with 100MB for large files
Tiff.initialize({
TOTAL_MEMORY: 100000000
});
var tiff = new Tiff({
buffer: e.target.result
});
var tiffCanvas = tiff.toCanvas();
$(tiffCanvas).css({
"max-width": "100px",
"width": "100%",
"height": "auto",
"display": "block",
"padding-top": "10px"
}).addClass("preview");
$(parentEl).append(tiffCanvas);
} else {
console.debug("render immmm");
$(parentEl).append('<img src="' + fr.result + '" class="preview"/>');
}
}
}
fr.onloadend = function(e) {
console.debug("Load End");
}
if (tif)
fr.readAsArrayBuffer(files[0]);
else
fr.readAsDataURL(files[0]);
}
// Not supported
else {
// fallback -- perhaps submit the input to an iframe and temporarily store
// them on the server until the user's session ends.
}
});
});
content_copyCOPY
https://stackoverflow.com/questions/65625803/load-a-tiff-file-using-jquery-and-javascript
Comments