7 个版本 (破坏性更新)
0.6.0 | 2024 年 1 月 3 日 |
---|---|
0.5.0 | 2023 年 12 月 29 日 |
0.4.0 | 2023 年 9 月 30 日 |
0.3.0 | 2022 年 6 月 2 日 |
0.1.0 | 2022 年 4 月 18 日 |
#2 in #ooxml
每月 35 次下载
5KB
LogiSheets
什么是 LogiSheets?
LogiSheets 是一个基于网络的电子表格应用程序,可以无缝地与 Excel 集成,并旨在进行扩展。值得注意的是,它是免费的!
您可以使用 Rust crate 和 Node 包来高效地读取、执行操作和写入 .xlsx 文件。
我们还在开发一个用户界面,以便用户可以直接在他们的网络浏览器中使用电子表格。
警告
LogiSheets 目前处于 早期开发阶段。我们欢迎您的反馈、问题或拉取请求!
设计目标
- 易于进一步开发:LogiSheets 提供丰富的 API,帮助您开发插件。
- 支持结构化数据:LogiSheets 引入了一种数据结构(暂时命名为 Block),以保持指定区域内单元格的一致位置。
- 支持协作
开始使用
在 Rust 中使用它
现在,LogiSheets 提供了读取和写入 .xlsx 文件的 API。更多用于操作电子表格的 API(如输入公式并计算或写入文件)正在路上。
加载文件
use logisheets::{Value, Workbook};
use std::fs;
let mut buf = fs::read("tests/6.xlsx").unwrap();
let mut wb = Workbook::from_file(&mut buf, String::from("6")).unwrap();
let mut ws = wb.get_sheet_by_idx(0).unwrap();
然后获取值
let v = ws.get_value(9, 1).unwrap();
或获取公式
let f = ws.get_formula(9, 1).unwrap();
您还可以获取单元格样式
let s = ws.get_style(9, 1).unwrap();
您可以通过以下方式获取工作表的注释
let comments = ws.get_comments();
作为网络应用程序使用
我们正在开发中。您可以通过运行 cmd 检查进度
yarn start:wasm
特色
- 插入/删除列或行。
- 计算并支持 200 多个函数。
- 撤销/重做
限制
- 插入/删除单元格。
依赖项
~19MB
~372K SLoC