1 jls.loader.provide('jls.util.Exif'); 2 3 jls.loader.requireLibrary('jls_exif'); 4 5 /** 6 * @class This class provides various EXIF functions. 7 */ 8 jls.util.Exif = jls.lang.Class.create({}); 9 10 Object.extend(jls.util.Exif, /** @lends jls.util.Exif */ 11 { 12 /** 13 * Extracts EXIF. 14 * 15 * @param {String} filename The image to process. 16 * @returns {Object} The EXIF info. 17 */ 18 extract : function(filename) { 19 return _native.exif.read(filename); 20 }, 21 /** 22 * Parses an EXIF date field as a local date. 23 * EXIF dates are formatted like "2011:03:10 16:41:24". 24 * 25 * @param {String} str The date as a string . 26 * @returns {Date} The date. 27 */ 28 parseDate : function(str) { 29 //2011:03:10 16:41:24 30 var fields = str.match(/^(\d+):(\d+):(\d+) (\d+):(\d+):(\d+)$/); 31 return new Date(parseInt(fields[1], 10), parseInt(fields[2], 10) - 1, parseInt(fields[3], 10), 32 parseInt(fields[4], 10), parseInt(fields[5], 10), parseInt(fields[6], 10)); 33 } 34 }); 35 36