[C#] .Net 下操作 Excel 新選擇 EPPlus - 插入圖片,技巧使用 AutoFit
2024-02-17
最近使用 EPPlus 來解決 , Excel 問題,不免俗的又是遇到一個萬年的問題
如何插入圖片,其實在 Excel 中插入圖片一直都是一個麻煩的問題,因為圖片其實都是浮在儲存格的上面
所以,基本上你很難控制儲存格的大小,但是其實是有一個小技巧,以前我在處理 Excel 也是這樣處理的..
這時候就不能夠用上一篇文章寫得輕鬆倒入資料,這時候要數格子了
其中有幾個處理的技巧
1. 插入圖片位置,需要 Row-1, Column-1 ,因為對齊的關係,才會對應到你要的位置
2.插入圖片的時候 其實為了使用 AutoFit 我將該儲存格放入一個 UTF 的一個空白字元,並且我將該儲存格FontSize 設定成 200px
這時候,只要下 AutoFit 就會變得跟圖片一樣寬了,這是小技巧
其中我用的空白字是 https://www.compart.com/en/unicode/U+2002
不能用一般半形或是全形的空白,都是沒用的
3. 插入圖片的 Name 一定要是 Unique 不然會出現
Unhandled exception. System.Exception: Name already exists in the drawings collection at OfficeOpenXml.Drawing.ExcelDrawings.ValidatePictureFile(String Name, FileInfo ImageFile)
廢話不多說就給 Code 吧,因為要簡單的數格子,該說的重點都在上面跟 Code 裡面了
其實每張圖片後面都藏有一個空白的 U+2002 只看不到而已,把圖片移開會看到後面有一個空白