Excelize 发布 2.1.0 版本, Go 语言 Excel 基础库-阿里云开发者社区

开发者社区> 开发与运维> 正文

Excelize 发布 2.1.0 版本, Go 语言 Excel 基础库

简介: Excelize 发布了 2.1.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。

github.com/360EntSecGroup-Skylar/excelize

Excelize 是 Go 语言编写的用于操作 Office Excel 文档类库,基于 ECMA-376 Office Open XML 标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的 XLSX 文档。相比较其他的开源类库,Excelize 支持写入原本带有图片(表)、透视表和切片器等复杂样式的文档,还支持向 Excel 文档中插入图片与图表,并且在保存后不会丢失文档原有样式,可以应用于各类报表系统中。入选 2018 开源中国码云 Gitee 最有价值开源项目 GVP,目前已成为 Go 语言最受欢迎的 Excel 文档基础库。

开源代码

GitHub: github.com/xuri/excelize

2020年2月10日,社区正式发布了 2.1.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。

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

新增功能

  • 新增 DeleteDefinedName 方法,支持从工作簿或工作表中删除名称
  • 新增 SetPageMarginsGetPageMargins 方法,支持获取和设置页面边距
  • 新增 DeleteChartDeletePicture 方法,支持从工作表中删除图表和图片
  • 增加对非 UTF-8 编码 Excel 文档的支持
  • 函数 AddChart 现已支持创建子母饼图、复合条饼图和组合图
  • 函数 AddChart 新增设置图表主要网格线支持,相关 issue #501
  • 函数 AddChart 支持设置折线图线条宽度,相关 issue #505
  • 函数 AddChart 现已支持指定图表坐标轴标签间隔单位,相关 issue #538
  • 函数 SetColVisible 支持对指定范围内的多列进行可见行设置
  • 函数 AddPivotTable 支持创建数据透视表时,所引用数据源区域存在空列,相关 issue #511

问题修复

  • 修复单元格值的末尾空白字符丢失问题
  • 函数 MergeCell
  • 支持重叠合并单元格处理,解决 issue #533
  • 修复某些情况下空内联富文本丢失的问题,解决 issue #529
  • 修复对空工作簿视图的处理,解决 issue #426
  • 增加对公式中存在的转义字符处理,解决 issue #546

性能表现

  • 新增 NewStreamWriter 方法,适用于生成包含大规模数据的工作表。与非流式写入相比,可降低 90.2% 的内存开销、节省 53% 时间
  • 函数 GetRows内存采用流式数据读取,读取电子表格文档内存开销降低 87.9%,相关 issue #146 和 issue #382
  • 兼容性提升,新增 49 个文档内部 XML 命名空间支持

其他

  • 对于解析 XML 过程出现的异常将使用日志记录,相关 issue #539
  • 提高单元测试覆盖度(行覆盖度:97.04%)
  • 完善单元测试中的错误处理
  • 包含简体中文、英语、法语、俄语、日语和韩语的多国语言文档网站更新
  • 技术交流群

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章