Excelize v2.7.1

版本說明

此版本中最顯著的變化包括:

相容性提示

  • 移除了 ChartLine 數據類型中的 Color 字段
  • 使用 RichTextRun 數據類型代替 ShapeParagraph
  • 使用 Fill 代替 Shape 數據類型中的 Color 字段
  • 移除了已導出的數據類型 AutoFilterListOptions
  • 將數據類型 TableOptions 重命名為 Table
  • 添加圖表函式 AddChart 改為使用 ChartType 類型枚舉值指定圖表類型
  • 修改了以下 7 個函式的簽名
    • func (f *File) AutoFilter(sheet, rangeRef string, opts *AutoFilterOptions) error 修改為 func (f *File) AutoFilter(sheet, rangeRef string, opts []AutoFilterOptions) error
    • func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *GraphicOptions) error 修改為 func (f *File) AddPictureFromBytes(sheet, cell string, pic *Picture) error
    • func (f *File) GetPicture(sheet, cell string) (string, []byte, error) 修改為 func (f *File) GetPictures(sheet, cell string) ([]Picture, error)
    • func (f *File) AddVBAProject(bin string) error 修改為 func (f *File) AddVBAProject(file []byte) error
    • func (f *File) GetComments() (map[string][]Comment, error) 修改為 func (f *File) GetComments(sheet string) ([]Comment, error)
    • func (f *File) AddTable(sheet, rangeRef string, opts *TableOptions) error 修改為 func (f *File) AddTable(sheet string, table *Table) error
    • func (sw *StreamWriter) AddTable(rangeRef string, opts *TableOptions) error 修改為 func (sw *StreamWriter) AddTable(table *Table) error

新增功能

  • 新增函式 SetSheetDimensionGetSheetDimension 以支援設定與獲取工作表已用區域,相關 issue #1463
  • 創建樣式函式 NewStyle 現已支援 17 種漸層填滿樣式
  • 增加創建樣式數量上限至 65430
  • 透過 AddPicture 添加圖片時,現已允許插入 BMP 格式圖片
  • 函式 GetPictures 支援讀取被添加至同一存儲格中的多張圖片
  • 設定條件式格式函式 SetConditionalFormat 支援設定帶有「如果為真則停止」和「圖示集」條件的條件式格式規則
  • 設定條件式格式函式 SetConditionalFormat 支援設定在條件式格式中使用帶有純色填滿樣式的數據條,並支援指定數據條的色彩,相關 issue #1462
  • 添加圖表函式 AddChart 支援設定圖表中各個數據系列使用自訂填滿色彩,相關 issue #1474
  • 添加圖表函式 AddChart 支援設定氣泡圖圖表中各個系列氣泡的大小
  • 添加圖表函式 AddChart 支援設定子母餅圖和復合條餅圖中第二繪圖區域的資料數列
  • 添加圖表函式 AddChart 支援為圖表中數據標籤設定自訂數字格式,相關 issue #1499
  • 創建表格函式 AddTable 支援在創建表格時指定是否包含標題行
  • 創建表格函式 AddTable 創建表格時增加對表格名稱的校驗,並導出了錯誤常量 ErrTableNameLength,相關 issue #1468
  • 函式 AutoFilter 支援為篩選範圍內的多個列設定篩選條件
  • 計算存儲格的值函式 CalcCellValue 現已支援指定是否為公式計算結果應用數字格式
  • 計算存儲格的值函式 CalcCellValue 對於以下公式函式加入了雙字節字符的支援:LEFT, LEN, LENB, MID, MIDB, RIGHT 和 RIGHTB,相關 issue #1476
  • 計算存儲格的值函式 CalcCellValue 函式對於存在錯誤的公式將在計算結果中返回公式錯誤代碼,並將詳細錯誤信息在 error 數據類型的返回值中返回,相關 issue #1490
  • 對輸入圖片文件的擴展名調整為大小寫不敏感,相關 issue #1503
  • 使用流式寫入器流式按列賦值時,對於值為 nil 的存儲格將會跳過生成該存儲格,相關 issue #756
  • 獲取超鏈接 GetCellHyperLink 函式支援獲取合併存儲格中的超鏈接
  • 添加了新的導出類型 ChartType 以表示圖表類型枚舉

相容性提升

  • 兼容帶有函式組的活頁簿
  • 兼容帶有嚴格模式 XML 命名空間地址的活頁簿主題,相關 issue #1447
  • 提高了與檔案內部不含活頁簿關係部件活頁簿的相容性,以修復開啓此類活頁簿可能出現的 panic
  • 提高了獲取帶有空白字符共享字符串表索引值的相容性,解決 issue #1508

問題修復

  • 修復了特定情況下讀取日期時間類型存儲格的值存在精度誤差的問題
  • 修復了特定情況下當修改原本存儲了日期時間類型的存儲格為文本類型值,修改後存儲格數據類型有誤的問題,解決 issue #1464
  • 修復了部分情況下公式計算結果為空的問題,解決 issue #1469
  • 修復了設定數據條類型條件式格式時,指定自訂最大/最小值無效的問題,解決 issue #1492
  • 修復了開啓列高或欄寬為 0 的工作表,保存後列高欄寬設定失效的問題,解決 issue #1461

性能優化

  • 提高了應用帶有自訂月份數字格式的速度,相關 issue #1455
  • 大幅提高了對於帶有合併存儲格工作表的處理速度,相關 issue #1448

其他

  • Go Excelize 提供了支援 WebAssembly / Javascript 環境的 excelize-wasm NPM 包
  • Go Modules 依賴模塊更新
  • 單元測試與文檔更新
  • 優化內部變數與函式命名
  • 包含簡體中文、英語、法語、俄語、日語、韓語、阿拉伯語、德語和西班牙語的多國語言文檔網站更新

致謝

感謝 Excelize 的所有貢獻者,以下是為此版本提交代碼的貢獻者列表:

  • @liron-l (Liron Levin)
  • @nathj07 (Nathan Davies)
  • @Josh-Weston (Josh Weston)
  • @jaby
  • @FlowingSPDG (Shugo Kawamura)
  • @barismar (Baris Mar Aziz)
  • @doingNobb (張濤)
  • @rpoetrap (Rizki Putra)
  • @huangshaokun
  • @CHANTXU64 (ChantXu64)
  • @playGitboy

results matching ""

    No results matching ""