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

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

  •  
  •   hixuri
    xuri 2 月 25 日 1721 次点击
    这是一个创建于 54 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

    Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376 ,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Excel 、WPS 、OpenOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写支持,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。自 2016 年开源以来已成为开发者在处理电子表格办公文档时的热门选择,正在被广泛应用于大型互联网公司、中小企业客户和初创公司。荣获 2025 上海开源创新菁英奖、入选 2023 开源创新榜优秀开源项目、荣获 2022 年中国开源创新大赛一等奖、2020 Gopher China - Go 领域明星开源项目 (GSP)、2018 年开源中国码云最有价值开源项目 GVP (Gitee Most Valuable Project)。

    开源代码

    2026 年 2 月 25 日,社区正式发布了 2.10.1 版本,该版本包含 40 余项更新,包括新增功能、错误修复和兼容性提升优化。来自世界各地的 29 名开发者为此版本贡献了代码。下面是有关该版本更新内容的摘要,此版本中最显著的变化包括:

    兼容性提示

    • 移除了 3 个导出的错误变量:ErrStreamSetColStyleErrStreamSetColWidthErrStreamSetPanes

    新增功能

    • 新增 ChartDataPoint 数据类型
    • ChartSeries 数据类型中新增 DataPoint 字段
    • ChartAxis 数据类型中新增 DropLinesHighLowLines 字段
    • GraphicOptions 数据类型中新增 Name 字段
    • ChartSeries 数据类型中新增 DataPoint 字段
    • 新增 2 个常量:MaxGraphicAltTextLengthMaxGraphicNameLength
    • 新增 7 个导出的错误变量:ErrFillTypeErrFillGraientColorErrFillGradientShadingErrFillPatternColorErrFillPatternErrMaxGraphicAltTextLengthErrMaxGraphicNameLength
    • 新增 GetHyperLinkCells 函数,支持获取包含超链接的单元格,相关 issue 1607
    • 新增 GetSheetProtection 函数,支持获取工作表保护设置
    • 当向已存在批注的单元格添加批注时,AddComment 函数将返回错误
    • 支持插入 ICO 格式图片,相关 issue 2234
    • 新增 2 项公式函数:SORTBY 和 UNIQUE
    • 添加图表时支持为圆环图、饼图和三维饼图设置数据点颜色,相关 issue 1904
    • 添加图表时支持为东亚文字与复杂文字脚本设置字体
    • 添加图表时支持为面积图和折线图设置下垂线与高低线
    • 获取图片时支持返回部分图片格式属性,相关 issue 2157
    • 新增流式设置列可见性功能,相关 issue 2075
    • 新增流式设置列的分级显示功能,相关 issue 2212
    • 添加形状和添加切片器时,支持将形状与切片器设置为单一单元格锚定类型
    • 获取切片器时支持获取单一单元格锚定类型的切片器
    • 支持设置与获取“3 个三角形”、“3 颗星”和“5 个方框”类型的图标集条件格式,相关 issue 2038
    • 删除条件格式和删除数据验证时,支持从一个大的单元格范围中删除指定单元格范围内的条件格式或数据验证,而保留其余单元格范围内的条件格式或数据验证
    • 添加图片时支持设置图片的名称
    • 添加图表或插入形状时,支持为图表或形状设置名称与替代文本
    • 添加切片器时支持为切片器设置替代文本
    • 支持校验图形名称与替代文本的长度,当长度超过限制时将会返回错误
    • 支持以 UTF-16 方式检查并截断文本长度

    兼容性提升

    • 保存工作簿时将自动移除无效的空行,减少生成的工作簿文件大小

    问题修复

    • 修复 v2.10.0 中引入的问题,解决 GetCellValueGetRows 函数在某些情况下读取空白单元格时,错误地返回了共享字符串索引,相关 issue 2240
    • 修复 GetPivotTables 函数在部分情况下获取数据透视表时发生 panic 的问题
    • 修复部分情况下,读取带有中文月份名称数字格式的单元格时,发生 panic 的问题,相关 issue 2224
    • 修复部分情况下,打开带有密码保护的加密工作簿时,发生 panic 的问题,相关 issue 2237
    • 修复使用流式写入器 SetRow 函数时,列样式缺失的问题
    • 修复获取图片时,未包含部分单元格图片的问题
    • 修复由浅色主题颜色索引溢出导致的,部分情况下生成的工作簿损坏的问题
    • 修复删除数据验证函数 DeleteDataValidation 在数据验证单元格范围无序时,数据验证单元格范围未被正确更新的问题
    • 修复设置条件格式函数 SetConditionalFormat 在设置部分带有时间周期条件格式规则时,生成的工作簿损坏的问题
    • 修复计算单元格的值时,对带有单引号的工作表名称解析失败,导致的单元格公式计算结果有误问题
    • 修复使用默认字体或填充格式创建样式时,重复创建样式的问题,相关 issue 2254

    性能优化

    • 通过增加计算缓存并将处理范围限定到实际数据区域,优化了公式计算引擎的性能,相关 issues 2057 和 2223
    • 优化算带有 VLOOKUP 函数的公式计算性能,内存分配与耗时最多降低约 50%,相关 issue 2139
    • 优化了合并单元格重叠范围的检查算法,降低了获取合并单元格函数 GetMergeCells 的内存分配和耗时,相关 issue 2226
    • 通过使用连分数基本递推公式转换优化了带有分数数字格式代码的单元格读取速度

    其他

    • Go Modules 依赖模块更新
    • 单元测试与文档更新
    • 包含阿拉伯语、德语、英语、西班牙语、法语、意大利语、日语、韩语、葡萄牙语、俄语、简体中文和繁体中文的多国语言文档网站更新
    • 支持 WebAssembly / Javascript 的 excelize-wasm NPM 包发布版本更新
    • 支持 Python 的 excelize PyPI 包发布版本更新
    • 支持 C# 的 ExcelizeCs NuGet .Net 包发布
    4 条回复    2026-02-25 20:37:29 +08:00
    wzw
        1
    wzw  
       2 月 25 日   1
    期待 word, 哈哈哈
    xieren58
        2
    xieren58  
       2 月 25 日   1
    Cool!!! wasm 版 好用...
    windyboy
        3
    windyboy  
       2 月 25 日   1
    厉害!
    eoo
        4
    eoo  
       2 月 25 日   1
    向大佬 致敬!
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2499 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 47ms UTC 16:00 PVG 00:00 LAX 09:00 JFK 12:00
    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