Я использую HTML5 File API & FileReader.Извлечь метафайлы EXIF-изображений из загруженного изображения HTML5 FileApi?
HTML:
<div id="holder"></div>
JS:
<script>
var holder = document.getElementById('holder'),
state = document.getElementById('status');
if (typeof window.FileReader === 'undefined') {
state.className = 'fail';
} else {
state.className = 'success';
state.innerHTML = 'File API & FileReader available';
}
holder.ondragover = function() { this.className = 'hover'; return false; };
holder.ondragend = function() { this.className = ''; return false; };
holder.ondrop = function (e) {
this.className = '';
e.preventDefault();
var file = e.dataTransfer.files[0],
reader = new FileReader();
reader.onload = function (event) {
console.log(event.target);
holder.style.background = 'url(' + event.target.result + ') no-repeat center';
};
console.log(file);
reader.readAsDataURL(file);
return false;
};
</script>
Как я могу получить EXIF мета данные из загруженного изображения?
Я попытался использовать this.
HTML:
<img src="image1.jpg" id="img1" exif="true" />
JS:
console.log($("#img1").exifPretty());
Это только возвращает пустой набор.
Я также использую FileReader JQuery Plugin.
Когда я использую функцию загрузки, я получаю файл, который является расширением исходного объекта File.
on:
load: function(e, file) { }
Но как я могу извлечь EXIF мета данные из него?
http://stackoverflow.com/questions/10341685/html-javascript-acces-exif-data-before-file-upload – Andreas
@Andreas Я использую FileReader JQuery плагин для извлечения файла: https: // GitHub .com/bgrins/filereader.js У меня есть файл obj ect, но мне не удастся получить метаданные. См. Мое обновление вопроса. Можете ли вы отправить ответ? – confile
В вашем примере вы не используете плагин FileReader, так что вы даже попробовали решение связанного вопроса SO? Используйте '.readAsBinaryString' из' FileReader', оберните эту строку в 'BinaryFile' (включенную в' EXIF' lib), чтобы передать этот объект в 'EXIF.readFromBinaryFile (binaryFileObject)' – Andreas