📖 项目简介
Mas标书格式化是一款专为WPS文档设计的自动化格式化加载项,旨在帮助用户快速、高效地规范文档格式。该工具特别适用于标书、技术文档等对格式要求严格的场景,能够大幅提升文档处理效率。
主要特点:
- 自动化处理:一键完成文档的页面、标题、表格、图片等多种格式化操作
- 智能识别:自动识别目录、价格列等特殊内容,进行针对性处理
- 批量操作:支持对文档中的所有表格、图片进行批量格式化
- 详细日志:提供实时日志记录,方便追踪处理过程和排查问题
📦 安装步骤
用户使用
- 已安装 WPS Office(支持WPS加载项功能)
- 浏览器打开 插件发布页(全部点允许即可安装)
🚀 核心功能
1. 页面格式化
自动设置文档页面为标准A4规格,配置规范的页眉页脚和页码:
- 纸张规格:A4(210mm × 297mm)
- 页边距:上下左右均为2.5厘米
- 页眉距离:1.5厘米
- 页脚距离:1.75厘米
- 页脚内容:右侧显示"重庆梅安森科技股份有限公司 编制",底部居中显示页码
- 目录处理:智能识别目录,自动插入分节符,确保正文从第1页开始编号
2. 标题格式化
规范化文档标题样式,确保层次结构清晰:
- 样式刷新:重新应用标题1-9的标准样式
- 编号清理:自动移除标题开头的数字编号和特殊字符(如"1. "、"一、"等)
- 格式统一:确保所有同级标题样式一致
3. 表格格式化
统一表格格式,提升专业性和可读性:
- 字体设置:统一为宋体,字号10.5磅
- 首行加粗:表头行自动加粗,增强层次感
- 对齐方式:单元格内容水平和垂直均居中对齐
- 自适应宽度:表格自动适应窗口宽度
- 价格列处理:智能识别包含"单价"、"总价"、"元"等关键词的价格列,统一保留2位小数
4. 图片格式化
规范化图片格式,确保文档整洁美观:
- 浮动图片转换:自动将浮动图片转换为嵌入式图片(排除小于2cm的签名图片)
- 样式应用:应用"图片"样式(需文档中已定义该样式)
- 尺寸限制:限制图片最大尺寸为长边≤21cm,短边≤16cm
- 比例锁定:保持图片原始宽高比,防止变形
5. 正文格式化
功能开发中:该功能目前处于开发阶段,敬请期待后续版本更新。
6. 更新目录域
保持文档目录和域的实时更新:
- 目录更新:自动更新文档中的目录(如果存在)
- 域更新:批量更新文档中所有域,确保数据准确性
7. 全部执行
一键完成:按顺序自动执行所有格式化功能(页面→标题→表格→图片→正文→目录域),适合需要全面格式化的文档。
🛠️ 二次开发步骤
前提条件
- 已安装 WPS Office(支持WPS加载项功能)
- 已安装 Node.js(建议v12及以上版本)
- 已安装 npm(Node.js包管理器)
- 访问 GitHub仓库(下载源码)
安装依赖
打开命令行工具,进入项目目录,执行以下命令安装项目依赖:
npm install
该命令会自动安装项目所需的开发依赖,包括:
-
wps-jsapi-declare:WPS JSAPI类型声明,提供代码智能提示 vite:前端构建工具wpsjs:WPS加载项开发工具包
💡 使用指南
开发调试
有两种方式启动开发服务器:
方式一:使用wpsjs工具包(推荐)
wpsjs debug
该命令会自动启动WPS并加载插件,同时启动本地HTTP服务器,支持热更新。WPS客户端通过HTTP服务请求加载项代码和资源。
方式二:使用Vite开发服务器
npm run dev
该命令会在
http://localhost:3889 启动开发服务器,支持实时热更新。
功能按钮说明
加载项成功加载后,在WPS的功能区会出现"Mas标书格式化"选项卡,包含以下功能按钮:
| 按钮名称 | 功能说明 |
|---|---|
| 页面格式化 | 设置文档页面为A4规格,配置页边距、页眉页脚和页码 |
| 标题格式化 | 刷新标题样式,清理标题中的多余编号和字符 |
| 表格格式化 | 统一表格字体、对齐方式、自适应宽度,处理价格列 |
| 图片格式化 | 转换浮动图片为嵌入式,应用图片样式,限制图片尺寸 |
| 正文格式化 | 格式化正文内容(功能开发中) |
| 更新目录域 | 更新文档目录和所有域 |
| 全部执行 | 按顺序执行所有格式化功能 |
| 打开日志 | 打开日志窗口,查看详细的执行过程和结果 |
| 使用说明 | 打开本使用说明文档 |
使用流程
- 打开文档:在WPS中打开需要格式化的文档
- 选择功能:根据需求点击相应的格式化按钮,或点击"全部执行"一键完成
- 查看日志:点击"打开日志"按钮,查看详细的执行日志和结果
- 检查文档:确认格式化效果,如有需要可撤销操作(Ctrl+Z)
注意事项:
- 执行格式化前,建议先保存文档副本,以防意外情况
- 标题格式化会弹出确认对话框,请确保已应用自定义样式集
- 图片格式化需要文档中已定义"图片"样式
- 某一功能执行期间,其他格式化按钮将被禁用,直到当前功能执行完成
生产构建
构建生产版本:
npm run build
构建产物将生成在
dist 目录中,可直接部署到Web服务器供WPS加载。
🔧 技术支持
项目信息
| 项目名称 | Mas标书格式化(MasFormat) |
| 版本 | v1.1.0 |
| 类型 | WPS加载项 |
| 开发框架 | WPS JSAPI + Vite |
| 开发者 | Limitlm |
技术架构
-
入口文件:
index.html- 加载项入口页面 -
配置文件:
manifest.xml- 加载项清单文件 -
功能区:
ribbon.xml- 定义WPS功能区按钮 -
核心逻辑:
js/format.js- 格式化功能实现 -
交互逻辑:
js/ribbon.js- 功能区按钮响应 -
日志系统:
js/log.js- 执行日志记录
目录结构
MasFormat/
├── images/ # 图标资源
│ ├── 1.svg
│ ├── 2.svg
│ ├── 3.svg
│ └── newFromTemp.svg
├── js/ # JavaScript源码
│ ├── dialog.js # 对话框逻辑
│ ├── format.js # 格式化功能实现
│ ├── log.js # 日志模块
│ ├── ribbon.js # 功能区按钮响应
│ ├── systemdemo.js # 系统演示
│ ├── taskpane.js # 任务窗格逻辑
│ └── util.js # 工具函数
├── ui/ # 界面文件
│ ├── dialog.html # 对话框界面
│ ├── logViewer.html # 日志查看器
│ └── taskpane.html # 任务窗格界面
├── index.html # 加载项入口
├── main.js # 主脚本加载器
├── manifest.xml # 加载项清单
├── package.json # 项目配置
├── ribbon.xml # 功能区定义
└── vite.config.mjs # Vite配置