png-uri-encoder.js
926 Bytes
/*global require:true*/
/*global module:true*/
(function(){
"use strict";
var path = require( 'path' );
var DataURIEncoder = require( './data-uri-encoder' );
function PngURIEncoder(path) {
DataURIEncoder.call( this, path );
}
PngURIEncoder.prefix = "data:image/png;base64,";
PngURIEncoder.prototype.stats = function(){
return DataURIEncoder.prototype.stats.call( this );
};
PngURIEncoder.prototype.encode = function( options ) {
var datauri = PngURIEncoder.prefix + DataURIEncoder.prototype.encode.call(this);
//IE LTE8 cannot handle datauris that are this big. Need to make sure it just
//links to a file
if (options && (datauri.length > 32768 || options.noencodepng )) {
var output_path = options.pngpath || options.pngfolder;
return path.join(output_path, path.basename(this.path))
.split( path.sep )
.join( "/" );
}
return datauri;
};
module.exports = PngURIEncoder;
}());