# 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;
## 页面样式
### 主页

# 构建与运行
本项目采用 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):开源精美中性图标库。