# batch-generate-document
**Repository Path**: shangqiao1996/batch-generate-document
## Basic Information
- **Project Name**: batch-generate-document
- **Description**: 批量生成文档(word/excel);批量替换文档内容;批量生成简历;大大减少重复操作;保证模板样式不变。
- **Primary Language**: Unknown
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 2
- **Forks**: 0
- **Created**: 2024-01-20
- **Last Updated**: 2024-03-31
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# batch-generate-document
#### 介绍
批量生成文档(word/excel);批量替换文档中内容;大大减少重复操作;替换文件内容的同时,保证模板预制样式不变。
根据人员信息和Word模板,批量将人员信息注入模板,然后生成文档。
比如,people.xlsx文件中记录了张三和李四两个的信息(name,age...),然后在template.docx中定义好name,age要注入的地方,执行命令后,会输出注入了人员信息的文档:张三.docx,李四.docx...
#### 实现思路
.docx/.xlsx文件被改为.zip后,解压打开后,由`word/style.xml`(保存样式)和`word/document.xml`(保存文本内容)组成,故我的思路是只修改document.xml中的文本内容,可以保持模板样式不被修改。
#### 安装教程
1. 安装nodejs(版本无限制)。https://nodejs.org/download/release/v18.0.0/node-v18.0.0-x64.msi 点击链接下载安装。
2. 克隆或下载项目到本地,进入项目,在根目录,执行`npm install`命令。
3. 依赖下载完成后,就可按照【使用说明】去操作。
#### 使用说明
1. 首先,要提供一个template.docx文档模板,放到source目录下,文档中需要替换的地方用【$变量名】填入。批量生成的文档都是按照这个生成的。
2. 其次,在source/people.xlsx中增加人员信息行或列。
3. 然后,在generateWord.js【35行】继续追加`.replace('【$变量名】', people.【people.xlsx中对应的列名】)`。
4. 双击【exec.bat】脚本,就会按照填入在people.xlsx中的人员信息,注入模板,在output目录下生成对应word文档。