购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

3.1 Excelize的诞生

2016年,Excelize正式在GitHub开源,实际上在开源之前,Excelize的兼容性和稳定性已经在生产环境中得到了验证。

起初Excelize是为了解决生成包含高级功能的电子表格文档的问题而开发的,当时我正在试图寻找一个能够创建复杂的数据图表,具备良好兼容性,并且具备跨平台支持的开源基础库。然而,经过一番调研和分析,我发现开源社区中并没有能够同时满足这些需求的基础库,当使用一些基础库处理较为复杂的电子表格文档时,往往会遇到Excel打开最终生成的文件时提示“文件已损坏”的问题,或者打开Excel后发现部分内容、样式、排版细节丢失。当时能够基于工作簿中的数据生成原生图表的基础库为数不多,通常的解决方法是先使用其他工具基于数据绘制图表,然后将生成的图表以静态图片的形式插入电子表格文档中。但是通过这种方法生成的图表是一张图片,并不能跟随数据源的变化做出动态改变。此类问题还有很多,基于这样的背景,经过了数月时间,在综合调研多种语言的各类相关主流开源项目的源代码之后,我决定编写一款能够解决上述问题的基础库。

借助Go语言的跨平台优势,Excelize可以在不依赖Office应用的前提下,在Linux、macOS、Windows甚至是嵌入式操作系统中进行电子表格文档的处理,并且能够通过WebAssembly的方式为浏览器、JavaScript语言运行时环境提供处理电子表格文档的能力。开发Excelize基础库这项工作的本质是使用Go语言对电子表格文档格式标准进行实现。我们日常使用的Excel办公文档,其文件内部涉及一套极其庞大且复杂的国际技术标准体系,这套标准体系定义了电子表格办公文档底层的数据结构和协议规范。作为在全球范围内被广泛采用的技术标准,其中蕴含着大量前人的智慧,本书会详细介绍该标准内容。正因该标准内容复杂性高,Excelize基础库还没有完全实现其全部内容,在实现基本的创建、打开、保存、另存为工作簿和单元格读写操作功能后,经过数个月的生产环境验证,Excelize开源并发布了第一个版本。 6QIEr4cmTy2TY4i0L4kx4OO8sES4NWjmLaJJeSZXQTmy+3AQoows60McuhYtqfnV

点击中间区域
呼出菜单
上一章
目录
下一章
×