Excelize v2.9.1
《Excelize 權威指南》圖書出版,網路購買方式:人民郵電出版社 | 異步社區 | 天貓 | 京東 | 當當 | 亞馬遜 | 微店 | 抖音
- 釋出日期: 2025年5月13日
- GitHub Release: https://github.com/xuri/excelize/releases/tag/v2.9.1
版本說明
此版本中最顯著的變化包括:
相容性提示
- 升級 Go 語言版本要求至 1.23.0 或更高版本,以升級依賴包
golang.org/x/crypto - 將
DataValidationType、DataValidationErrorStyle、DataValidationOperator、PictureInsertType的資料類型由int變更為byte - 函式
SetCellInt的形參類型改為int64,解決 issue #2068 - 添加圖片、圖表、圖形和表單控制項等繪圖對象時,偏移設定將不再影響繪圖對象的尺寸,解決 issue #2001
新增功能
- 在
Chart資料類型中新增GapWidth和Overlap欄位 - 在
ChartPlotArea資料類型中新增ShowDataTable和ShowDataTableKeys欄位 - 在
ChartAxis資料類型中新增Alignment欄位 - 在
ChartSeries資料類型中新增DataLabel欄位 - 在
PageLayoutOptions資料類型中新增PageOrder欄位 - 新增 2 項錯誤變數:
ErrPageSetupAdjustTo和ErrStreamSetColStyle - 新增 2 項列舉類型:
HeaderFooterImagePositionType和IgnoredErrorsType - 新增 2 項資料類型:
CalcPropsOptions和HeaderFooterImageOptions - 新增 2 項函式
SetCalcProps和GetCalcProps支援設定和獲取活頁簿計算屬性 - 新增
CultureNameJaJP、CultureNameKoKR和CultureNameZhTW列舉值,支援帶有日本年號、韓國檀君紀元(檀紀)和民國紀年數字格式的存儲格,相關 issue #1885 - 新增
AddHeaderFooterImage函式,支援在頁首和頁尾中設定圖片,相關 issue #1395 - 新增
AddIgnoredErrors函式,支援略過特定存儲格範圍內的錯誤,相關 issue #2046 - 新增
SetColStyle函式,支援流式寫入時設定欄樣式,相關 issue #2075 - 函式
AddChart和AddChartSheet支援設定圖表坐標軸文本方向和旋轉角度,相關 issue #2025 - 函式
AddChart和AddChartSheet支援設定柱狀圖和條形圖的間隙寬度和重疊程度,相關 issue #2033 - 函式
AddChart和AddChartSheet支援設定資料系列標籤的格式,相關 issue #2052 - 函式
AddChart和AddChartSheet支援設定位於圖表繪圖區域下方的資料表,相關 issue #2117 - 函式
AddFormControl函式支援為復選框類型的表單控件設定存儲格超鏈接,相關 issue #2113 - 函式
SetPageLayout支援設定頁面佈局的頁面順序 - 函式
DeletePicture支援刪除帶有單一存儲格錨定類型的圖片,相關 issue #2059 - 函式
SetPageLayout增加了對選項參數的檢查,如果給定的選項值無效,將傳回錯誤提示信息 - 支援跨多個工作表調整資料驗證,相關 issue #2072
- 支援應用帶
#號和零佔位符的數字格式,相關 issue #2058 - 支援應用帶
?符號的數字格式 - 支援透過指定 "oneCell" 定位類型添加帶有單一存儲格錨定類型的繪圖對象,相關 issue #2002
問題修復
- 修復 v2.9.0 中引入的問題,修改由流式寫入生成的活頁簿後,開啓後提示檔案損壞問題,解決 issue #2015
- 修復部分情況下生成重復的「無填滿」格式問題,解決 issue #2014
- 修復部分情況下存儲格垂直或水平外框樣式丟失問題,解決 issue #2048
- 修復部分情況下條件式格式外框樣式丟失的問題,解決 issue #2061
- 修復部分情況下獲取樞紐分析表時出現 panic 的問題,解決 issue #1954 和 #2051
- 修復
GetStyle函式無法獲取VertAlign格式的問題 - 修復
CalcCellValue函式在部分情況下子表達式計算錯誤的問題,解決 issue #2083 - 修復部分情況下因圖片引用檢查有誤導致的錯誤刪除圖片問題
- 修復流式寫入時,非零列樣式 ID 未覆蓋默認存儲格樣式的問題
- 修復流式寫入時,部分情況下將在活頁簿內部生成重復的
colXML 元素問題 - 修復部分情況下設定圖表標題字型時出現的 panic 問題,解決 issue #2102
- 修復部分情況下刪除公式計算鏈時出現的 panic 問題
- 修復因共享公式解析錯誤導致的公式計算結果有誤問題,解決 issue #2056
- 修復當活頁簿內部包含大於 4GB 的部件時,生成的 ZIP64 格式檔案損壞問題
- 修復當部分情況下重命名工作表時,自訂名稱中的工作表名稱更新有誤的問題,解決 issue #2126
性能優化
- 使用深拷貝庫
github.com/tiendc/go-deepcopy代替github.com/mohae/deepcopy,深度拷貝速度提升 3 倍,相關 issue #2029 - 修復 v2.9.0 中引入的問題,避免對空白存儲格的值進行修剪以降低記憶體分配
- 提高公式計算引擎對帶有整列或整欄存儲格引用公式的計算速度
- 行迭代器讀取速度最高提升約 20%,記憶體分配降低約 10%
其他
- Go Modules 依賴模塊更新
- 單元測試與文檔更新
- 包含阿拉伯語、德語、英語、西班牙語、法語、意大利語、日語、韓語、葡萄牙語、俄語、簡體中文和繁體中文的多國語言文檔網站更新
- 支援 WebAssembly / JavaScript 的 excelize-wasm NPM 包發佈版本更新
- 支援 Python 的 excelize PyPI 包發佈版本更新
致謝
感謝 Excelize 的所有貢獻者,以下是為此版本提交代碼的貢獻者列表:
- @wushiling50
- @imirkin (Ilia Mirkin)
- @Juneezee (Eng Zer Jun)
- @Arpelicy
- @zhuhaicity (ZhuHaiCheng)
- @xxf0512 (xxf)
- @gypsy1234
- @mengpromax (MengZhongYuan)
- @hly-717
- @kurtinge (Kurt Inge Smådal)
- @IvanHristov98 (Ivan Hristov)
- @artur-chopikian (Artur Chopikian)
- @romanshevelev (Roman Shevelev)
- @LZCZ
- @hm3248
- @moisespsena (Moises P. Sena)
- @paolobarbolini (Paolo Barbolini)
- @timesince
- @shcabin
- @tgulacsi (Tamás Gulácsi)
- @R3dByt3 (R3dByt3)
- @Now-Shimmer