JSFiddle - React, Tailwind, and code Playground

by Jeremy Banks

JavaScript

var contentType = 'image/png';
var b64Data = 'iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==';

var bytesAsCharacters = atob(b64Data);

function charCodeFromCharacter(c) {
    return c.charCodeAt(0);
}

var byteValueArray = Array.prototype.map.call(bytesAsCharacters, charCodeFromCharacter);

var uint8Data = new Uint8Array(byteValueArray);

var blob = new Blob([uint8Data], {type: contentType});
var blobUrl = URL.createObjectURL(blob);

window.location = blobUrl;