Excelize 开源基础库发布 2.9.1 版本更新 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
luxurioust
V2EX    Go 编程语言

Excelize 开源基础库发布 2.9.1 版本更新

  •  
  •   luxurioust
    xuri 219 天前 1642 次点击
    这是一个创建于 219 天前的主题,其中的信息可能已经有所发展或是发生改变。

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376 ,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Excel 、WPS 、OpenOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写支持,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。

    开源代码

    GitHub: github.com/xuri/excelize

    中文文档: xuri.me/excelize/zh-hans

    2025 年 5 月 13 日,社区正式发布了 2.9.1 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,此版本中最显著的变化包括:

    版本说明

    此版本中最显著的变化包括:

    兼容性提示

    • 升级 Go 语言版本要求至 1.23 或更高版本,以升级依赖包 golang.org/x/crypto
    • DataValidationTypeDataValidationErrorStyleDataValidationOperatorPictureInsertType 的数据类型由 int 变更为 byte
    • 函数 SetCellInt 的形参类型改为 int64,解决 issue 2068
    • 添加图片、图表、形状和表单控件等绘图对象时,偏移设置将不再影响绘图对象的尺寸,解决 issue 2001

    新增功能

    • Chart 数据类型中新增 GapWidthOverlap 字段
    • ChartPlotArea 数据类型中新增 ShowDataTableShowDataTableKeys 字段
    • ChartAxis 数据类型中新增 Alignment 字段
    • ChartSeries 数据类型中新增 DataLabel 字段
    • PageLayoutOptions 数据类型中新增 PageOrder 字段
    • 新增 2 项错误变量:ErrPageSetupAdjustToErrStreamSetColStyle
    • 新增 2 项枚举类型:HeaderFooterImagePositionTypeIgnoredErrorsType
    • 新增 2 项数据类型:CalcPropsOptionsHeaderFooterImageOptions
    • 新增 2 项函数 SetCalcPropsGetCalcProps 支持设置和获取工作簿计算属性
    • 新增 AddHeaderFooterImage 函数,支持在页眉和页脚中设置图片,相关 issue 1395
    • 新增 AddIgnoredErrors 函数,支持忽略特定单元格范围内的错误,相关 issue 2046
    • 新增 SetColStyle 函数,支持流式写入时设置列样式,相关 issue 2075
    • 函数 AddChartAddChartSheet 支持设置图表坐标轴文本方向和旋转角度,相关 issue 2025
    • 函数 AddChartAddChartSheet 支持设置柱状图和条形图的间隙宽度和重叠程度,相关 issue 2033
    • 函数 AddChartAddChartSheet 支持设置数据系列标签的格式,相关 issue 2052
    • 函数 AddChartAddChartSheet 支持设置位于图表绘图区域下方的数据表,相关 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
    • 修复 GetStyle 函数无法获取 VertAlign 格式的问题
    • 修复 CalcCellValue 函数在部分情况下子表达式计算错误的问题,解决 issue 2083
    • 修复部分情况下因图片引用检查有误导致的错误删除图片问题
    • 修复流式写入时,非零行样式 ID 未覆盖默认单元格样式的问题
    • 修复流式写入时,部分情况下将在工作簿内部生成重复的 col XML 元素问题
    • 修复部分情况下设置图表标题字体时出现的 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 Smdal)
    • 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
    3 条回复    2025-05-19 14:23:24 +08:00
    eoo
        1
    eoo  
       218 天前   1
    给大佬点赞了
    sn0wdr1am
        2
    sn0wdr1am  
       218 天前   1
    luxurioust
        3
    luxurioust  
    OP
       213 天前
    @eoo 谢谢支持
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1283 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 34ms UTC 17:15 PVG 01:15 LAX 09:15 JFK 12:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86