2014-07-01 140 views
1

如果有人能幫助我,我需要一些幫助。我試圖從Sitecore字段獲取圖像,然後將其轉換爲base64字符串。將sitecore字段的圖像轉換爲base64字符串

我所做的是將該內容轉換爲ImageField數據類型,但我似乎無法找到將其轉換爲base64的解決方案。

Sitecore.Data.Fields.ImageField img = itm.Fields["image"]; 

有人能幫我嗎?

最好的問候, Ionut。

回答

6

你需要從像場鏈接的媒體項目,並創建一個從媒體項目文件流中的Base64字符串:

ImageField imageField = itm.Fields["Image"]; 
MediaItem mediaItem = imageField.MediaItem; 
Stream stream = mediaItem.GetMediaStream(); 
Byte[] bytes = new Byte[stream.Length]; 
stream.Read(bytes, 0, bytes.Length); 
img64.Src = "data:" + mediaItem.MimeType + ";base64," + Convert.ToBase64String(bytes); 
+0

非常感謝你。這對我來說很有魅力。 –

+1

嘿,那裏。再回到關於這個問題的另一個問題。有誰知道我可以從sitecore獲得圖像,但是通過440x80的尺寸?我不想在sitecore中更改它,只是以特定的大小閱讀它。 –

+0

我有關於這個問題的另一個問題。 如何將所有通過圖片轉換成PNG或JPEG圖片?我目前也獲得了GIF圖像,這對我不利。 –

相關問題