2014-03-24 227 views
0

我試圖將剪貼板中的圖像粘貼到<img>標記中。這個圖像的來源是Prnt Scrn命令,而不是一個文件。此剪貼板圖片格式爲base64。這個base64字符串可以插入src屬性的<img>標籤(一旦按下ctrl-v)使用javascript進行顯示。這可以通過使用plugin來實現。將base64字符串存儲到GridFS(mongoDB文件存儲)

所以<img>標籤將是這樣的:

<img id="screen_image" src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABVYAAAMACAI......(long string here)" 

雖然,我可能持續這整個字符串轉換成MongoDB的收集和檢索回用於顯示圖像,我的最終目標是要堅持這一形象到gridFS。如果我可以將base64解釋爲一個文件並將它保存爲gridFS,有什麼辦法嗎?

我希望我已經說清楚了。評論歡迎。

更新:我想維護一個常見的集合來存儲圖像或任何文件(我已經使用gridFS來堅持文件附件,所以我不想創建一個新的集合來存儲剪貼板圖像)。我也嘗試使用window.atob()解碼字符串,但後來我不知道如何可以堅持到gridFS

+0

我想我已經在此做了許多**評論/回答。但[GridFS](http://docs.mongodb.org/manual/core/gridfs/)不是用於簡單存儲文件的「go to」方法。但你似乎想要在這裏「解碼」base-64輸入。所以肯定「谷歌」是在這裏的幫助。沒有?如果不是我的評論,這應該是**非常有用。有關示例,請參見[這裏](http://stackoverflow.com/a/22574469/2313887)。 –

+0

你遇到什麼問題,你在哪裏需要幫助?保存包含base64編碼數據的字符串與任何其他字符串沒有區別。 – WiredPrairie

+0

@WiredPrairie:我已經更新了我的問題 – Vineeth

回答

0

我現在使用Mongo作爲我的高級項目,以前我在存儲子項(客戶端是本地非像世界願景一樣的利潤)圖片,但最近我已經將它們存儲在base64中的實際子文檔中。所有圖像都在3mb左右,base64轉換成大部分4-5mb。如果你可以將它們存儲爲base64,我認爲它使得一個更簡單的模式。

我知道你說過要使用GridFS,但如果你有16MB以上的文件,我只會去那條路線。對於我所希望的顯而易見的原因,只需將它們作爲字符串存儲在文檔中就簡單多了。