# 2Html
**Repository Path**: xmgh1024_admin/2Html
## Basic Information
- **Project Name**: 2Html
- **Description**: word、excel转换html文件
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-02-03
- **Last Updated**: 2026-07-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# Word转HTML转换器
一个基于Java和Spring Boot的多格式文档转换工具,支持将Word、Excel和PDF文档转换为HTML或Word格式。
## 功能特性
- ✅ 支持.doc/.docx格式的Word文档转换为HTML
- ✅ 支持.xls/.xlsx格式的Excel文档转换为HTML
- ✅ 支持.pdf格式的PDF文档转换为Word(文本模式和图片模式)
- ✅ 保持原文档的布局、字体和结构
- ✅ 图片自动内嵌为base64编码,生成独立的HTML文件
- ✅ 支持ZIP导出模式:图片分离存储,生成 .zip 包(仅 .docx)
- ✅ 生成的HTML文件名与原文档保持一致
- ✅ HTML文件超过10MB时自动拦截并给出提示
- ✅ 提供Web界面,支持文件上传和下载
- ✅ 控制台输出详细的转换日志
- ✅ 独立Spring Boot项目,无需依赖外部中间件
## 技术栈
- Java 1.8
- Spring Boot 2.7.18 (独立运行,不依赖Nacos等外部服务)
- Apache POI 5.2.5
- Apache PDFBox 2.0.30
- Apache Tika 2.9.1
- Maven 3.x
- Thymeleaf
## 项目结构
```
word2html/
├── src/
│ ├── main/
│ │ ├── java/
│ │ │ └── com/word2html/
│ │ │ ├── Word2HtmlApplication.java # 主启动类
│ │ │ ├── controller/
│ │ │ │ ├── Word2HtmlController.java # 文档转HTML控制器
│ │ │ │ └── PdfToWordController.java # PDF转Word控制器
│ │ │ └── service/
│ │ │ ├── WordToHtmlService.java # Word转HTML服务
│ │ │ ├── ExcelToHtmlService.java # Excel转HTML服务
│ │ │ └── PdfToWordService.java # PDF转Word服务
│ │ └── resources/
│ │ ├── application.yml # 应用配置
│ │ ├── logback-spring.xml # 日志配置
│ │ └── templates/
│ │ ├── index.html # 首页(文档转HTML)
│ │ └── pdf2word.html # PDF转Word页面
│ └── test/
├── pom.xml # Maven配置
└── README.md # 项目说明
```
## 构建和运行
### 前置要求
- JDK 1.8或更高版本
- Maven 3.x
- 无需Nacos或其他外部中间件
### 编译项目
```bash
mvn clean compile
```
### 打包项目
```bash
mvn clean package
```
打包完成后,会在`target`目录下生成可执行的jar包:`word2html-1.0.0.jar`
### 运行项目
```bash
java -jar target/word2html-1.0.0.jar
```
或者使用Maven直接运行:
```bash
mvn spring-boot:run
```
### 访问应用
启动成功后,在浏览器中访问:
```
http://localhost:8080/file2html # 文档转HTML
http://localhost:8080/file2html/pdf2word/page # PDF转Word
```
## 使用说明
### 文档转HTML
1. **选择导出模式**:上传前选择导出模式
- **单文件模式**(默认):图片内嵌为base64编码,生成独立的 .html 文件
- **ZIP包模式**(仅 .docx):图片分离存储,生成包含 .html 和 `media/` 图片目录的 .zip 包
2. **上传文档**:选择.doc/.docx(Word)或.xls/.xlsx(Excel)格式的文件,系统自动开始转换
3. **下载文件**:转换成功后,点击"下载HTML文件"或"下载ZIP文件"按钮
4. 生成的HTML文件名与原文档保持一致
### PDF转Word
1. **选择模式**:
- **文本模式**:提取PDF中的文字内容,适合文字型PDF
- **图片模式**:将PDF每页渲染为图片嵌入Word,适合扫描件或复杂排版
2. **上传PDF**:选择.pdf格式的文件
3. **下载Word**:转换成功后,下载.docx文件
## 注意事项
- 上传文件大小限制为50MB
- 生成的HTML文件包含所有图片(base64编码),若超过10MB将被拦截并提示
- ZIP导出模式仅支持 .docx 格式,图片以 `media/image_N.ext` 形式独立存储
- PDF转Word的表格识别仍在完善中,复杂表格可能需要手动调整
- 建议使用现代浏览器访问Web界面
## 开发说明
### 日志输出
应用会在控制台输出详细的转换日志,包括:
- 文件上传信息(文件名、大小、类型)
- 转换过程信息
- 图片处理信息
- 错误信息(如有)
### 配置说明
主要配置在`application.yml`中:
- 服务端口:8080(可通过 `--server.port` 参数覆盖)
- 上下文路径:`/file2html`
- 上传文件大小:最大50MB
- 生成的HTML大小限制:10MB(超过自动拒绝)
- 日志级别:INFO(com.word2html包为DEBUG)
## 许可证
本项目仅供学习和研究使用。