2012-03-03 57 views
4

如何控制base64圖像我正在做一個應用程序,我想向用戶顯示一系列base64編碼圖片。它們通過使用data-url顯示。如果用戶想要保存圖片,可以直接點擊並保存爲(或將其拖入文件夾中)。當用戶保存爲

有什麼辦法可以控制擁塞文件名嗎?目前,Chrome只是「吸收」下載,甚至不認爲它是一個圖像。這可以以任何方式完成嗎?

我只需要它在Chrome中工作。

感謝所有幫助

回答

3

確保您正在爲數據uri中的圖像設置適當的mime類型。這樣做對我來說修復了Chrome 17中的文件擴展名。該文件被下載爲「download.png」,並打開罰款。

<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA 
AAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO 
9TXL0Y4OHwAAAABJRU5ErkJggg=="/> 

但是,如果你真的需要完全控制的文件名,你可以利用的a標籤的HTML5「下載」屬性,設置文件名,並創建一個Blob對象與你的圖像數據,這將是使用被下載。

在這裏看到一個演示:http://updates.html5rocks.com/2011/08/Downloading-resources-in-HTML5-a-download

在這裏閱讀更多:http://dev.w3.org/2009/dap/file-system/file-writer.html

+0

謝謝你,這是我需要的!你是對的,我錯過了datauri中的mime類型。此外,將圖像以數據uri作爲href並將文件名作爲download-attribute包裝到a標籤中。這允許用戶通過點擊下載圖像。當圖像拖動到桌面上時,我仍然無法選擇文件名,但這對我很有用。再次感謝。 – JPuge 2012-03-03 21:41:58

相關問題