EPPlus 8.0.1 版本发布:Excel处理库的重大更新
EPPlus EPPlus-Excel spreadsheets for .NET 项目地址: https://gitcode.com/gh_mirrors/epp/EPPlus
项目简介
EPPlus是一个强大的.NET库,专门用于读取、写入和操作Excel文件。它提供了丰富的API接口,使开发人员能够轻松地在应用程序中集成Excel功能,而无需依赖Microsoft Office组件。EPPlus支持Excel 2007/2010/2013/2016/2019/2021以及Office 365的文件格式(.xlsx),广泛应用于数据报表生成、数据导入导出等场景。
EPPlus 8.0.1版本主要更新内容
核心功能增强
-
OLE对象支持
8.0.1版本新增了对OLE(对象链接与嵌入)对象的完整支持,包括链接文件和嵌入文件。开发人员现在可以在Excel中嵌入或链接各种文件类型,如Word文档、PDF等,并通过ExcelOleObject
类进行编程控制。该功能还提供了ProgId
、ExternalLink
和Image
等新属性,方便开发者获取OLE对象的详细信息。 -
数字签名功能
新版本引入了对工作簿数字签名和签名行的支持。这一安全特性允许开发者为Excel文件添加数字签名,验证文件的完整性和来源真实性,特别适用于需要法律效力或高安全性要求的文档场景。 -
单元格内图片与IMAGE函数
EPPlus 8.0.1支持Excel的IMAGE函数,可以在单元格内直接显示图片。这一功能通过ExcelPicture
类实现,开发者可以灵活控制图片的显示方式和位置。同时,修复了之前版本中关于图片处理的多项问题,包括EMZ格式图片流处理、SVG与PNG转换时的尺寸保持等。 -
敏感度标签API
新增的敏感度标签API允许与Microsoft信息保护SDK(MIP)集成,为Excel文件添加和管理敏感度标签,满足企业级数据保护需求。
性能优化与内存管理
-
自动调整列宽优化
改进了AutoFitColumns
方法的性能,使其在处理大型数据集时更加高效。 -
公式计算内存优化
减少了公式计算时的内存消耗,特别是改进了表达式缓存机制,提升了复杂工作簿的处理效率。 -
范围复制增强
Range.Copy
方法现在支持填充操作,简化了数据复制和填充的编程模型。
API改进与新增功能
-
新增
IsEmpty
方法
为ExcelRange
类添加了IsEmpty()
方法,可以检查单元格是否为空(包括值、注释、线程注释和公式),方便开发者进行更精确的单元格状态判断。 -
表格数据访问改进
增强了表格API,现在可以通过列名直接访问表格数据,使代码更加直观和易读。 -
形状调整点支持
新增对形状调整点的支持,开发者可以更精细地控制Excel中的形状对象。 -
边框处理改进
BorderAround
方法现在会覆盖相邻单元格的边框,确保边框样式的一致性。
重要问题修复
-
公式计算修复
解决了多个公式计算问题,包括:- GETPIVOTDATA函数的列过滤问题
- PERCENTRANKS函数的准确性
- IF函数中的数组处理
- IMAGE函数的稳定性
- COUNTIF函数在数字比较时的准确性
-
插入删除操作改进
插入和删除单元格现在会正确更新图表引用,确保图表继续指向移动后的单元格。同时修复了表格中数组公式和计算列公式在插入删除操作时的多项问题。 -
图像处理修复
解决了EMZ图像流处理、TIF文件支持、图像DPI读取等问题,提高了图像处理的可靠性。 -
绘图对象修复
确保取消组合最后一个绘图对象时会正确删除组形状,修复了图表引导线的XML有效性等问题。
版本兼容性说明
EPPlus 8.0.1引入了一些破坏性变更,开发者需要注意:
- 移除了多个标记为过时的方法和属性
- 将多个属性和方法从decimal类型改为double类型
- 引入了新的许可证密钥系统,商业用途需要获取相应的许可证
总结
EPPlus 8.0.1版本带来了多项重要功能和改进,特别是在OLE对象支持、数字签名和单元格内图片方面提供了企业级的功能支持。性能优化和内存管理的改进使得处理大型Excel文件更加高效稳定。对于需要高级Excel操作功能的.NET开发者来说,这个版本提供了更强大、更可靠的工具集。建议正在使用EPPlus的开发者评估升级,特别是那些需要安全特性或复杂Excel功能集成的项目。
EPPlus EPPlus-Excel spreadsheets for .NET 项目地址: https://gitcode.com/gh_mirrors/epp/EPPlus
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考