2014-05-08 58 views
3

文件,我有這樣的對象:創建從對象dataURL

{dataURL: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwA…r/wALbpMM7gAAAANJREFUQ9S2TEBrmQAAAABJRU5ErkJggg==...", 
type: "image/png"} 

我怎麼可以創建這個對象的文件?

+0

創建它在哪裏? – CodingIntrigue

+3

請定義「創建文件」的含義! –

+1

你可能想看看[FileSaver](https://github.com/eligrey/FileSaver.js) –

回答

0

由於您使用的是JavaScript,您無法在Windows上創建除IE外的文件,但您可以通過將dataURL傳遞給src屬性(如果img標籤)來顯示此圖像。 img標籤可以處理base64string並顯示圖像。

+1

這不完全是真的,你可以使用_JavaScript_啓動下載(只是你無法控制它結束的位置向上)。 –

0

如果我正確理解你的問題,那麼你可以使用該base64屬性作爲源的圖像。

例子:

var obj = { 
    dataURL: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwA…r/wALbpMM7gAAAANJREFUQ9S2TEBrmQAAAABJRU5ErkJggg==...", 
    type: "image/png" 
}; 

var image = document.createElement('img'); 
image.src = obj.dataURL; 

document.body.appendChild(image); 

或者,如果你想也立即下載的東西,那麼你應該

var obj = { 
    dataURL: "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAASwA…r/wALbpMM7gAAAANJREFUQ9S2TEBrmQAAAABJRU5ErkJggg==...", 
    type: "image/png" 
}; 

window.location = obj.dataURL.replace("image/png", "image/octet-stream"); 

然後圖像將被下載爲名稱爲「下載」文件或東西像那樣。