HTML/Javascript Access EXIF data before file upload

exif, file-upload, html, javascript, jquery

Solution

I finally found a client side solution for the problem:

- Read the file using the `FileReader` and the method `.readAsBinaryString`

- Then wrap that binary string into a BinaryFile object which is already included in the EXIF Library

- Finally call `EXIF.readFromBinaryFile(binaryFileObject);`

and its done :)

Problem

I am trying to extract EXIF data from a image(jpeg) which has been dragged into the browser or has been selected via a html file input element. I managed to preview the image within the browser using `FileReader and FileReader.readAsDataURL` as described here. and I found a EXIF library which allows to extract the EXIF data of an image via javascript. But for me it only works if I use it with normal `img` tags which load their content over a URL. I also found this question on StackOverflow where the accepted answer states that it is just not possible. But I am pretty sure that it can be realized because 500px.com extracts the EXIF data immediately after a file is added for upload and before the upload has been finished. Some ideas how it should be possible to extract the EXIF data from the base64 encoded image I get from the FileReader?

Original source

Related problems