57
// 项目简介
rhwp 是一款使用 Rust 和 WebAssembly 构建的开源 HWP 和 HWPX 查看器与编辑器,旨在提供通用的文档访问能力。它具备强大的渲染引擎、全面的解析功能以及一个能够保持与标准 HWP 工作流兼容的 Web 编辑器。该项目遵循结构化的开发路线图,旨在通过社区驱动的贡献实现与商业替代方案完全一致的功能。
// 技术分析
rhwp 是一个基于 Rust 和 WebAssembly 的开源项目,旨在为 HWP 和 HWPX 文档格式提供通用的查看器和编辑器。通过利用基于 CQRS 原则构建的稳健核心架构,它解决了跨各种平台和 AI 驱动工作流的专有文档格式的可访问性问题。该项目强调以人为本、AI 辅助的开发方法,在利用 AI 进行高效实现的同时,通过严格的测试和文档确保架构完整性和质量控制。
// 核心亮点
01
提供高保真的 HWP/HWPX 解析器和渲染引擎,能够处理表格、公式和多栏布局等复杂元素。
02
提供与 hwpctl API 兼容的基于 Web 的编辑器,实现与现有基于 Web 的文档工作流的无缝集成。
03
支持多种输出格式,包括用于高质量矢量渲染的 SVG 和用于交互式 Web 查看的 Canvas。
04
实现了一个复杂的自动分页引擎,用于管理表格行拆分和形状定位等复杂的布局需求。
05
包含一套全面的 CLI 工具集,用于文档检查、调试和自动 SVG 导出,方便开发者进行故障排除。
06
采用模块化架构,将文档模型、渲染流水线和编辑命令分离,以确保可维护性和可扩展性。
// 典型使用场景
01
无需安装即可直接在 Web 浏览器中查看和编辑 HWP/HWPX 文件
02
通过 npm 包将 HWP 编辑功能集成到 Web 应用程序中
03
使用高性能 CLI 工具将 HWP 文档转换为 SVG 格式
// 快速开始
要开始使用 rhwp,开发者可以通过 npm 安装核心库(使用 'npm install @rhwp/core')或完整编辑器(使用 'npm install @rhwp/editor')。对于从源码构建的用户,请确保已安装 Rust 1.75+、Node.js 18+ 和 Docker,然后使用 'cargo build' 构建原生二进制文件,或使用 'docker compose' 生成 WASM 工件。详细的入门指南和架构文档可在仓库的 'mydocs/' 目录中找到。