使用以下代码将画布图像数据转换为blob URL。
function createBlobUrl(canvasData) {
var binary = atob(canvasData.split(',')[1]);
var array = [];
for ( var i = 0; i < binary.length; i++) {
array.push(binary.charCodeAt(i));
}
blob = new Blob([ new Uint8Array(array) ], {
type : 'image/png'
});
var imgAsDataURL = URL.createObjectURL(blob, {autoRevoke: false});
}
我需要列出在另一个页面中创建的所有图像。
$(".imageListDiv").empty();
var html = '<ul class="list-inline list">';
for(i=0; i<blobURL.length; i++) {
html += '<li id="' + i + '"><a';
if (i == 0) {
html += ' class="selected"';
}
html += '><img src="' + blobURL[i] + '></a></li>';
}
html += '</ul>';
$(html).appendTo(".imageListDiv");
但面临的问题是在移动浏览器中,当我从其他页面(最近创建的页面除外)返回到图像列表页面时,这些URL似乎被破坏了。图像的预览将不可用。但在桌面设备上它工作正常。