PDF base64 string

by dshilkret

HTML

<body>
<h1>Demo for downloading/display PDF base64 string in IE, Chrome, Safari</h1>
</body>

JavaScript

'use strict';

var data = "VGhpcyBpcyBhIGRvY3VtZW50IGJlaW5nIHVzZWQgdG8gaGVscCBEYXZpZCAmIEZhbiBzb2x2ZSBhIHByb2JsZW0h";
var fileName = "df.pdf";
if (window.navigator && window.navigator.msSaveOrOpenBlob) { // IE workaround
    var byteCharacters = atob(data);
    var byteNumbers = new Array(byteCharacters.length);
    for (var i = 0; i < byteCharacters.length; i++) {
        byteNumbers[i] = byteCharacters.charCodeAt(i);
    }
    var byteArray = new Uint8Array(byteNumbers);
    var blob = new Blob([byteArray], {type: 'application/pdf'});
    window.navigator.msSaveOrOpenBlob(blob, fileName);
}
else { // much easier if not IE
    window.open("data:application/pdf;base64, " + data, '', "height=600,width=800");
}