# html2docx-project **Repository Path**: aylerh/html2docx-project ## Basic Information - **Project Name**: html2docx-project - **Description**: 转换效果一般:如简历的html; - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-20 - **Last Updated**: 2026-08-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 概览 **HTML2DOCX Pro** 是一个基于 `turbodocx/html-to-docx` 引擎的高性能 HTML 转 Word (.docx) 文档在线转换与容器化微服务。系统支持网页端文件拖拽/点击上传即时转换、在线 HTML 代码实时编辑渲染、A4 纸张排版拟真预览、精选多场景模板一键载入,以及文档版式(页边距、纸张方向、中英文字体、页眉页脚与页码)自定义配置导出,提供纯 JavaScript 栈的极致转换体验。 ## 缺点 - 转换效果一般:如简历的html; ## 页面样式 ### 主页 ![1](./images/1.png) # 构建与运行 本项目采用 Docker 容器化隔离部署,支持本地与生产环境快速启动。 ### 1. 启动服务 (推荐) 在 Windows PowerShell 中执行以下命令: ```powershell $OutputEncoding = [Console]::InputEncoding = [Console]::OutputEncoding = [System.Text.Encoding]::UTF8; docker compose up -d --build ``` ### 2. 访问应用 - **Web 前端工作台**:[http://localhost:8270](http://localhost:8270) - **健康检查接口**:[http://localhost:8270/health](http://localhost:8270/health) - **转换 API**:`POST http://localhost:8270/api/convert` ### 3. 停止服务 ```powershell docker compose down ``` # 解决痛点与使用技术 ### 解决痛点 1. **摆脱庞大外部 Office 依赖**:传统方案依赖 LibreOffice 或 MS Office COM 进程,镜像体积动辄 1GB+ 且启动迟钝。本项目使用纯 Node.js 库直接操作 OpenXML,镜像仅约 150MB,毫秒级冷启动。 2. **多端格式不一致与排版丢失**:HTML 富文本转 Word 常常丢失表格边框、背景色与嵌套结构。本项目基于 AST 精确解析 HTML 节点,实现高保真度表格与富文本样式映射。 3. **缺少交互式实时预览与参数调节**:提供模拟 A4 真实纸张视觉渲染,支持动态调节纵横方向、边距规格(常规/窄/宽)、自定义页眉与自动页码。 ### 使用技术 - **核心引擎**:`html-to-docx` (turbodocx) - **后端框架**:`Node.js` + `Express` + `Multer` + `CORS` - **前端交互**:原生 `HTML5` + `CSS3` (Glassmorphism 毛玻璃拟态) + `JavaScript` (ES6+) - **容器与部署**:`Docker` (多阶段构建) + `Docker Compose` # 致谢 - [turbodocx/html-to-docx](https://github.com/turbodocx/html-to-docx):纯JS实现的HTML转Word引擎。 - [Express](https://github.com/expressjs/express):快速极简的Node.js服务端框架。 - [Remix Icon](https://github.com/Remix-Design/RemixIcon):开源精美中性图标库。