我用 Rust + WebAssembly 重建了我的旧图像处理库
发布: (2026年2月8日 GMT+8 01:31)
2 分钟阅读
原文: Dev.to
Source: Dev.to
使用 Rust + WebAssembly 重建旧的浏览器图像库
我最初把这个项目作为两个小目标的练手项目:
- 发布一个库
- 在真实工作流中学习 Rust + WebAssembly
我曾暂停了一段时间,最近重新投入并进行正式改进:img-toolkit。
它是一个基于 Rust/WASM 核心、配有 JS/TS 包装层的浏览器图像处理库。
- 调整尺寸
- 格式转换(
jpg/png/webp) - 亮度调节
GitHub:
Demo:
npm:
为什么我重新启动它
我想把它从一个简单的练手仓库变成更整洁、真正可用的项目。
最近的改进
- API 清理,函数边界更明确:
processImageresizeconvertFormatadjustBrightness
- 在不同运行时环境下改进 WebP 行为
- 更简洁的面向用户的错误处理
- 文档和发布流程的改进
快速比较(相同源图像)
| 大小 | |
|---|---|
| 原始 | 747 KB |
| JS Canvas 输出 | 49.3 KB |
| Rust/WASM 输出 | 41.3 KB |
(比较图像位于 README 中。)
它仍在持续开发中,但已经比之前更易于使用。如果你尝试了它,真诚期待你对 API 设计和实际使用场景的反馈。
