//Karthik Srinivasan

Product Engineer, CTO & a Beer Enthusiast
Experiments, thoughts and scripts documented for posterity.

Quirky Personal Projects

LinkedIn

Email me

XMP Support in Exif.js

Nov, 2018

Extending exif.js library to support Adobe XMP data

Step 1. Read the raw xmp data from the file
Step 2: Convert xml to js object
Step 3: Update the exif.js file handler
Pull request: https://github.com/exif-js/exif-js/pull/28
Usage:
  document.getElementById("file-input").onchange = function(e) {
        EXIF.getData(e.target.files[0], function() {
              var exifData = JSON.stringify(this.exifdata, null, 2)
              var iptcData = JSON.stringify(this.iptcdata, null, 2)
              var xmpData = JSON.stringify(this.xmpdata, null, 2)

        var prettPrinter = "IPTC DATA: " + iptcData +
               "\n\nXMP DATA: " + xmpData +
               "\n\nEXIF DATA: " + exifData;

        document.getElementById('data').innerHTML = prettPrinter;          
    });
}