Excelize v2.8.1
- 釋出日期: 2024年2月26日
- GitHub Release: https://github.com/xuri/excelize/releases/tag/v2.8.1
版本說明
此版本中最顯著的變化包括:
相容性提示
- 升級至該版本需要您使用的 Go 語言為 1.18 或更高版本,以升級依賴庫
golang.org/x/net
- 將資料類型
HeaderFooterOptions
中的字段AlignWithMargins
和ScaleWithDoc
修改為指針類型,解決 issue #1645 - 移除了未使用的導出類型
ShapeColor
新增功能
- 新增函式
SetCellUint
支援設定無符號整型數,相關 issue #1681 - 新增函式
GetPictureCells
支援獲取圖片存儲格坐標,相關 issue #1218 - 新增函式
GetConditionalStyle
支援獲取條件式格式樣式定義,相關 issue #1690 - 新增函式
GetHeaderFooter
支援獲取工作表頁眉頁腳控制字符設定 - 新增函式
AddSlicer
支援為表格和樞紐分析表添加交叉分析篩選器 - 新增函式
GetPivotTables
支援獲取樞紐分析表 - 新增函式
DeletePivotTable
支援刪除樞紐分析表 - 資料類型
PivotTableOptions
中添加了新的字段Name
以支援創建樞紐分析表時指定自訂樞紐分析表名稱 - 新增 7 項公式函式:DBCS、SEARCH、SEARCHB、TEXT、TEXTAFTER、TEXTBEFORE 和 xlfn.ANCHORARRAY
- 新增
ChartLineType
枚舉類型,以支援設定圖表區域外框線型,相關 issue #1706 - 資料類型
Chart
中添加了新的字段Border
以支援設定圖表區域外框類型 - 資料類型
ChartLine
中添加了新的字段Type
以支援設定圖表線型 - 新增文檔對象關係部件名稱與命名空間變數
NameSpaceSpreadSheetXR10
、ContentTypeSlicer
、ContentTypeSlicerCache
和SourceRelationshipSlicer
- 新增擴展資源標識常量
ExtURIPivotCacheDefinition
- 允許在自訂名稱、表格名稱和樞紐分析表名稱中使用點字符
- 刪除工作表中的表格時,將保留表格區域全部存儲格的值
- 支援讀取帶有分數數字格式的存儲格
- 刪除圖片時,如果圖片僅有一處引用,將同時從活頁簿內部刪除對應的圖片文件,以減少生成活頁簿的體積並消除由此產生的潛在安全風險
- 支援為批注框設定自訂寬度和高度,相關 issue #1688
- 插入或刪除列和欄時,支援更新條件式格式、資料驗證、自訂名稱、圖形對象、存儲格公式、易失性函式中的存儲格坐標引用,相關 issue #1306 和 #1615
- 新增 6 項新增條件式格式類型:「特定文本」、「空值」、「無空值」、「錯誤」、「無錯誤」和「發生日期」
- 公式計算引擎支援計算帶有多重負號的存儲格公式
- 複製行時支援複製條件式格式與資料驗證,相關 issue #1729
- 設定列高度函式
SetRowHeight
支援透過指定列高度為-1
移除自訂列高度設定 - 當給定的列高度無效時,函式
SetRowHeight
將返回錯誤提示信息 - 添加圖表函式
AddChart
支援設定圖表中的資料標籤位置,相關 issue #1704 - 添加圖表函式
AddChart
支援設定圖表區域、繪圖區域和資料標記的填充色和透明填充,在Chart
、ChartPlotArea
和ChartMarker
數據類型中添加了Fill
選項,相關 issue #1786 - 添加圖表函式
AddChart
支援設定圖表坐標軸文字字體、字號和刪除線格式,相關 issue #1809 - 資料類型
ChartSeries
中新增了DataLabelPosition
字段,用於指定圖表中各資料系列資料標籤的位置 - 資料類型
Chart
中新增了BubbleSize
字段,用於設定氣泡圖和三維氣泡圖的氣泡大小 - 新增導出資料類型
ChartDataLabelPositionType
- 獲取圖片存儲格函式
GetPictureCells
和獲取圖片函式GetPictures
支援讀取由 Kingsoft WPS™ Office 創建的嵌入存儲格圖片,相關 issue #664 - 設定條件式格式函式
SetConditionalFormat
支援批量為多個存儲格區域設定條件式格式,相關 issue #1783 - 重命名工作表時支援更新自定義名稱,相關 issue #1792
- 新增
GetBaseColor
函式,支援讀取首選十六進制顏色代碼,相關 issue #1794 - 公式計算引擎支援讀取日期類型存儲格的值,相關 issue #1807
- 存儲格值讀取函式支援繼承使用
OpenReader
函式打開文檔時所指定的Options
選項設定,相關 issue #1815
相容性提升
- 提升了對內部帶有絕對路徑繪圖部件活頁簿的相容性
- 提升了對內部帶有浮點型
tabRatio
屬性值活頁簿部件的兼容性 - 提升了讀取帶有空的自訂數字格式存儲格的相容性
- 提升了與不支援默認主題部件命名空間電子錶格預覽程序的相容性,相關 issue #1694
- 提升了存储格註解圖形与 KingSoft WPS™ Office 的兼容性,相关 issue #1789
- 保存活頁簿時對內部部件進行排序,以確保在不改變活頁簿內容時生成的檔案具有一致的哈希值,相關 issue #1732
問題修復
- 添加對公式函式 MID 和 MIDB 中 num_chars 參數的檢查,以防止出現負數導致的 panic,解決 issue #1647
- 修復部分情況下,公式函式 LEN、LOWER、PROPER、REPT、UPPER 和 IF 的計算結果為空的問題
- 修復部分情況下,計算公式函式 CHITEST 和 MMULT 時出現 panic 的問題
- 修復 v2.8.0 中引入的問題,透過創建特殊自訂名稱的方式設定列印區域和列印標題時不再返回錯誤
- 修復 v2.8.0 中引入的問題, 修復了由於內部樣式部件中索引色彩和 MRU 色彩缺省值處理有誤導致的生成活頁簿損壞問題
- 修復 v2.8.0 中引入的問題, 修復了特定情況下讀取帶有數字格式的存儲格結果為空的問題,解決 issue #1658
- 修復 v2.7.1 中引入的問題,修復了泡泡圖和立體泡泡圖中不顯示泡泡的問題
- 修復因內部工作表 ID 處理有誤導致的特定情況下透過
AutoFilter
函式添加自動過濾器時出現的 panic,解決 issue #1655 - 修復部分情況下在工作表中添加表格導致的工作表損壞問題
- 修復部分情況下讀取帶有時間類型數字格式存儲格的值有誤的問題,解決 issue #1661
- 支援計算字符型公式存儲格的值,解決 issue #1665
- 修復在帶有存儲格表格的活頁簿中添加表格時,表格 ID 生成有誤的問題
- 修復部分情況下活頁簿內容關係部件丟失的問題
- 升級數字格式表達式解析器,以修復對於帶有自訂文本的數字格式表達式格式化結果有誤問題
- 更新了簡體中文和繁體中文語言的預設數字格式列表
- 修復了部分情況下,自訂數字格式索引生成有誤的問題,解決 issue #1677
- 修復透過刪除後再添加表格方式更新表格區域範圍時出現錯誤的問題,解決 issue #1682
- 修復在使用流式讀取函式後,所產生的臨時文件無法被清理的潛在問題,解決 issue #1680
- 修復部分情況下公式計算結果有誤的問題,解決 issue #1681
- 修復併發讀取存儲格的值時出現的競態問題,解決 issue #1687
- 修復根據樣式索引獲取樣式定義時,部分樣式定義缺失問題,解決 issue #1708
- 修復部分情況下讀取帶有科學記數法數字格式存儲格的值結果有誤的問題,解決 issue #1710
- 修復部分情況下,讀取帶有工作表中不含
r
屬性的行元素導致的 panic 問題,解決 issue #1723 - 修復獲取富文本存儲格函式
GetCellRichText
在獲取內聯富文本時返回錯誤的問題 - 修復部分情況下,由於共享字符串表索引計算有誤導致的設定存儲格的值結果有誤問題
- 修復函式
GetConditionalFormats
讀取帶有「高於平均值」條件式格式規則時 panic 的問題,解決 issue #1745 - 修復了刪除行之後合併存儲格有誤的問題,解決 issue #1749
- 修復了
SetConditionalFormat
函式在創建帶有多規則條件式格式時,規則優先級有誤的問題,解決 issue #1770 - 修復了
GetConditionalFormats
函式無法讀取帶有漸層填滿格式資料橫條的問題,解決 issue #1769 - 修復了獲取樣式函式
GetStyle
或獲取條件式格式樣式函式GetConditionalStyle
所返回的小數位數DecimalPlaces
字段值有誤問題,解決 issue #1777 - 修復了使用
CalcCellValue
函式時,開啓RawCellValue
選項失效的問題,解決 issue #1803
性能優化
- 提高了添加與刪除樞紐分析表和圖片的性能
- 降低了修剪存儲格時的內存佔用,解決 issue #1712
其他
- Go Modules 依賴模塊更新
- 單元測試與文檔更新
- 包含簡體中文、繁體中文、英語、法語、俄語、日語、韓語、阿拉伯語、德語和西班牙語的多國語言文檔網站更新
致謝
感謝 Excelize 的所有貢獻者,以下是為此版本提交代碼的貢獻者列表:
- @fnickels (Francis Nickels III)
- @m12r (Matthias Endler)
- @Abdelaziz-Ouhammou
- @Juneezee (Eng Zer Jun)
- @yicixin (壹次心)
- @TeeRenJing (rjtee)
- @phperic (magicrabbit)
- @kjushka (Anton Petrov)
- @krstak (Marko Krstic)
- @lpxxn (Nick)
- @ByteFlyCoding
- @yangliyl (Yang Li)
- @15535382838
- @TajangSec (Tajang)
- @lujin1 (lujin)
- @parkoo (Tian)
- @ZhangXiao1024 (ZX)
- @zcgly
- @bramvbilsen (Bram Vanbilsen)
- @user65536
- @tianaiyouqing (天爱有情)
- @cuishuang (cui fliter)
- @CooolNv (Xuesong)
- @yuegu520
- @oneweek20169902 (li)
- @3zmx
- @327674413
- @melf-xyzh (MELF晓宇)
- @L4nn15ter
- @rememberher (Jerry)
- @ooooooobh (cherry)
- @xxxwang1983
- @funa12
- @coolbit
- @taitaking (zhukewen)
- @kewenof
- @ivekkairi (Vivek Kairi)
- @edwardfward (Ed)