scratch – Blame information for rev 84

Subversion Repositories:
Rev:
Rev Author Line No. Line
84 office 1 // Converts base64 to blob.
2 function base64toBlob(base64Data, contentType) {
3 contentType = contentType || '';
4 var sliceSize = 1024;
5 var byteCharacters = atob(base64Data);
6 var bytesLength = byteCharacters.length;
7 var slicesCount = Math.ceil(bytesLength / sliceSize);
8 var byteArrays = new Array(slicesCount);
9  
10 for (var sliceIndex = 0; sliceIndex < slicesCount; ++sliceIndex) {
11 < slicesCount; ++sliceIndex) { var begin = sliceIndex * sliceSize;
12 < slicesCount; ++sliceIndex) { var end = Math.min(begin + sliceSize, bytesLength);
13  
14 < slicesCount; ++sliceIndex) { var bytes = new Array(end - begin);
15 < slicesCount; ++sliceIndex) { for (var offset = begin, i = 0 ; offset < end; ++i, ++offset) {
16 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) { bytes[i] = byteCharacters[offset].charCodeAt(0);
17 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) { }
18 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) { byteArrays[sliceIndex] = new Uint8Array(bytes);
19 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) { }
20 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) { return new Blob(byteArrays, { type: contentType });
21 < slicesCount; ++sliceIndex) {< end; ++i, ++offset) {}