Skip to content

Instantly share code, notes, and snippets.

@frontenddeveloping
Created June 20, 2014 06:46
Show Gist options
  • Save frontenddeveloping/f0ddf668e9f1bc0ed5ad to your computer and use it in GitHub Desktop.
Save frontenddeveloping/f0ddf668e9f1bc0ed5ad to your computer and use it in GitHub Desktop.
Conversion dataUri string to Blob
function dataUri2Blob (dataUri) {
var dataUriArr = dataUri.split(';base64,'),
imageType = dataUriArr[0].replace('data:', ''),
base64Str = dataUriArr[1],
BlobBuilder = window.BlobBuilder || window.WebKitBlobBuilder || window.MSBlobBuilder || window.MozBlobBuilder,
binaryString = window.atob(base64Str),
bytes,
arrayBuffer,
blob;
bytes = Array.prototype.map.call(binaryString, function(c){ return c.charCodeAt(0) & 0xff; });
arrayBuffer = new Uint8Array(bytes).buffer;
if (window.Blob) {
blob = new Blob([arrayBuffer], {type : imageType});
} else {
blob = new BlobBuilder();
blob.append(arrayBuffer);
blob = blob.getBlob(imageType);
}
return blob;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment