報表內顯示Base64格式的圖片


Wyn Enterprise報表的圖片元素支持外部圖片、內嵌圖片、數據庫二進制圖片(Image字段),只需簡單綁定數據集字段即可。
如果數據庫字段值不是二進制的Image,而是字符型的Base64格式的字符串,那么可以使用Convert.FromBase64String表達式來轉換。
具體操作方法如下:

(1)數據庫表設計字符型字段,如下圖:

圖中的Base64字段類型為varchar(MAX),就是用於保存圖片的Base64內容的。

(2)准備Base64字段內容
實際項目中,數據庫中的Base64字符串都是通過程序代碼轉換得到的。
如果想要手工講一個圖片轉成Base64字符串,可使用網上的圖片轉Base64的工具,一般上傳一個圖片文件,轉換之后就能得到下面這樣的字符串:
data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAARMAAAGB....
將這個字符串從轉換工具的網頁上拷貝下來,去掉最前面的 data:image/png;base64, (包括最后的逗號),再粘貼到數據庫的字段中,如下圖:

當然使用insert語句也可以。

(3)拖放圖片元素到報表
如下圖,在一個表格的單元格中拖放一個圖片元素:


(4)設置圖片的數據
先展開圖片元素的【圖片】屬性,以便看到更多設置選項,如下圖:

再點擊【數據】右側的小方塊圖標,打開表達式編輯器,輸入下面這樣的表達式:
=Convert.FromBase64String(Fields!Base64.Value)
如下圖:

這個表達式的含義是:將Base64字段值轉成二進制的圖片。
這樣設置后,就可以預覽報表了,效果如下圖:

其中表格第三列是顯示Base64字段的實際字符串內容,最后一列的紅色塊是實際的圖片。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM