| name | user-manual |
| description | 生成用户操作手册、用户指南、使用说明。当用户需要编写操作手册、用户手册、使用指南、培训文档、FAQ时使用此skill。 |
用户操作手册生成规范
适用场景
- 系统操作手册
- 用户使用指南
- 功能操作说明
- 培训文档
- FAQ常见问题
- 快速入门指南
与技术文档的区别
| 文档类型 | 读者 | 语言风格 | 内容重点 |
|---|
| 技术规格说明书 | 开发人员 | 技术术语 | 架构、接口、数据库 |
| 用户操作手册 | 最终用户 | 通俗易懂 | 操作步骤、截图说明 |
文档结构规范
操作手册标准结构
1 概述
1.1 手册目的
1.2 适用对象
1.3 系统简介
2 快速入门
2.1 环境要求
2.2 登录系统
2.3 界面介绍
3 功能操作
3.1 模块1操作说明
3.2 模块2操作说明
4 常见问题(FAQ)
5 附录
5.1 快捷键说明
5.2 联系方式
培训文档标准结构
1 培训目标
2 培训内容
2.1 课程1
2.2 课程2
3 实操练习
4 考核标准
封面页规范
封面内容
[单位名称] # 黑体 18pt,居中
[项目名称] # 黑体 18pt,居中
[文档标题] # 黑体 26pt,居中,加粗
[空行 × 6]
文档编号:XXX-XXX-XXX
版本号:V1.0
编制日期:YYYY年MM月DD日
密 级:内部
页边距设置
section.top_margin = Cm(2.54)
section.bottom_margin = Cm(2.54)
section.left_margin = Cm(3.17)
section.right_margin = Cm(3.17)
字体规范
正文字体
- 中文:仿宋
- 英文:Times New Roman
- 字号:12pt(小四号)
- 行距:1.5倍行距
标题字体
| 标题级别 | 字体 | 字号 | 对齐方式 |
|---|
| 一级标题 | 黑体 | 22pt(二号) | 左对齐 |
| 二级标题 | 黑体 | 16pt(三号) | 左对齐 |
| 三级标题 | 黑体 | 14pt(四号) | 左对齐 |
表格字体
- 表头:黑体 11pt,加粗,居中,背景色 #D9E2F3
- 表格内容:仿宋 11pt
写作风格要求
操作手册写作原则
- 用户友好:面向非技术人员,避免专业术语
- 步骤清晰:每步操作明确,可直接执行
- 图文并茂:关键步骤配截图说明
- 实例驱动:使用实际案例演示操作
段落结构
- 每个功能先用1段文字说明功能用途
- 然后用编号列表展示操作步骤
- 最后给出注意事项或操作提示
操作步骤格式
操作步骤:
1. 打开系统,进入登录页面
2. 输入用户名和密码
3. 点击【登录】按钮
4. 系统跳转到首页
注意事项:
- 首次登录需要修改初始密码
- 密码连续错误5次将锁定账户
截图占位符格式
[截图:登录页面]
图1-1 登录页面
内容模板
操作说明章节模板
3.1 功能名称
功能用途:[1-2段文字说明功能用途和使用场景]
操作步骤:
1. [步骤1描述]
2. [步骤2描述]
3. [步骤3描述]
[截图占位符]
图3-1 界面名称
注意事项:
- [注意事项1]
- [注意事项2]
FAQ章节模板
4 常见问题
Q1:问题描述?
A1:解答内容。
Q2:问题描述?
A2:解答内容。
代码示例
基础模板
"""用户操作手册生成模板"""
import os
from docx import Document
from docx.shared import Pt, Cm, RGBColor
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.enum.table import WD_TABLE_ALIGNMENT
from docx.oxml.ns import qn
from docx.oxml import OxmlElement
def set_cell_shading(cell, color):
"""设置单元格背景色"""
shading_elm = OxmlElement('w:shd')
shading_elm.set(qn('w:fill'), color)
cell._tc.get_or_add_tcPr().append(shading_elm)
def create_doc():
"""创建带标准样式的文档"""
doc = Document()
style = doc.styles['Normal']
font = style.font
font.name = '仿宋'
font.size = Pt(12)
style.element.rPr.rFonts.set(qn('w:eastAsia'), '仿宋')
for section in doc.sections:
section.top_margin = Cm(2.54)
section.bottom_margin = Cm(2.54)
section.left_margin = Cm(3.17)
section.right_margin = Cm(3.17)
for i in range(1, 4):
hs = doc.styles[f'Heading {i}']
hs.font.name = '黑体'
hs.element.rPr.rFonts.set(qn('w:eastAsia'), '黑体')
hs.font.color.rgb = RGBColor(0, 0, 0)
hs.font.size = [Pt(22), Pt(16), Pt(14)][i-1]
return doc
def add_cover(doc, title, doc_info):
"""添加封面页"""
for _ in range(6):
doc.add_paragraph()
p = doc.add_paragraph()
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = p.add_run('四川省市场监督管理局数据应用中心')
run.font.size = Pt(18)
run.font.name = '黑体'
run.element.rPr.rFonts.set(qn('w:eastAsia'), '黑体')
doc.add_paragraph()
p = doc.add_paragraph()
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = p.add_run('应急指挥调度中心运维服务项目(2024-2025)')
run.font.size = Pt(18)
run.font.name = '黑体'
run.element.rPr.rFonts.set(qn('w:eastAsia'), '黑体')
doc.add_paragraph()
p = doc.add_paragraph()
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
run = p.add_run(title)
run.font.size = Pt(26)
run.font.name = '黑体'
run.element.rPr.rFonts.set(qn('w:eastAsia'), '黑体')
run.bold = True
for _ in range(6):
doc.add_paragraph()
table = doc.add_table(rows=len(doc_info), cols=2)
table.alignment = WD_TABLE_ALIGNMENT.CENTER
for i, (k, v) in enumerate(doc_info.items()):
table.cell(i, 0).text = k
table.cell(i, 1).text = v
for c in [table.cell(i, 0), table.cell(i, 1)]:
for p in c.paragraphs:
p.alignment = WD_ALIGN_PARAGRAPH.CENTER
for r in p.runs:
r.font.size = Pt(14)
doc.add_page_break()
def add_revision(doc):
"""添加文档修订记录"""
doc.add_heading('文档修订记录', level=1)
t = doc.add_table(rows=2, cols=4)
t.style = 'Table Grid'
for i, h in enumerate(['版本', '日期', '修订人', '修订内容']):
t.cell(0, i).text = h
set_cell_shading(t.cell(0, i), 'D9E2F3')
t.cell(1, 0).text = 'V1.0'
t.cell(1, 1).text = '2024-01-01'
t.cell(1, 2).text = '—'
t.cell(1, 3).text = '初始版本'
doc.add_page_break()
def add_toc(doc):
"""添加目录占位符"""
doc.add_heading('目 录', level=1)
doc.add_paragraph('(正式发布时自动生成)').alignment = WD_ALIGN_PARAGRAPH.CENTER
doc.add_page_break()
def T(doc, headers, rows):
"""添加带样式的表格"""
t = doc.add_table(rows=1 + len(rows), cols=len(headers))
t.style = 'Table Grid'
for i, h in enumerate(headers):
t.cell(0, i).text = h
set_cell_shading(t.cell(0, i), 'D9E2F3')
for ri, row in enumerate(rows):
for ci, val in enumerate(row):
t.cell(ri + 1, ci).text = str(val)
return t
def P(doc, text, style=None):
"""添加段落"""
if style:
doc.add_paragraph(text, style=style)
else:
doc.add_paragraph(text)
def B(doc, text):
"""添加加粗文本"""
p = doc.add_paragraph()
run = p.add_run(text)
run.bold = True
return p
def gen_user_manual(output_path):
"""生成用户操作手册"""
doc = create_doc()
add_cover(
doc,
title='用 户 操 作 手 册',
doc_info={
'文档编号:': 'UM-XXX-2024-001',
'版本号:': 'V1.0',
'编制日期:': '2024年01月01日',
'密 级:': '内部'
}
)
add_revision(doc)
add_toc(doc)
doc.add_heading('1 概述', level=1)
doc.add_heading('1.1 手册目的', level=2)
P(doc, '本手册是《应急指挥调度中心系统》的用户操作手册,旨在帮助用户快速掌握系统的使用方法。通过本手册,用户可以了解系统的功能模块、操作流程和使用技巧。')
doc.add_heading('1.2 适用对象', level=2)
P(doc, '本手册适用于以下用户群体:')
P(doc, '系统管理员:负责系统配置、用户管理、权限设置等管理工作。', style='List Bullet')
P(doc, '业务操作员:负责日常业务操作,如事件上报、任务处理、值班管理等。', style='List Bullet')
P(doc, '领导用户:负责审批决策、指挥调度、数据查看等管理工作。', style='List Bullet')
doc.add_heading('1.3 系统简介', level=2)
P(doc, '应急指挥调度中心系统是面向应急管理部门的综合性业务系统,提供突发事件管理、应急预案管理、值班排班、资源管理、应急演练等功能。系统支持PC端管理后台、三维地图看板和微信小程序三种终端。')
doc.add_heading('2 快速入门', level=1)
doc.add_heading('2.1 环境要求', level=2)
P(doc, '使用本系统前,请确认您的设备满足以下环境要求:')
T(doc, ['类别','要求'], [
['操作系统','Windows 7/10/11、macOS、Linux'],
['浏览器','Chrome 80+、Edge 80+、Firefox 70+'],
['分辨率','1920×1080、1366×768、1280×720'],
['网络','需要连接互联网或政务外网'],
])
doc.add_heading('2.2 登录系统', level=2)
P(doc, '系统登录是使用系统的第一步,以下是详细的操作步骤:')
B(doc, '操作步骤:')
P(doc, '1. 打开浏览器,在地址栏输入系统访问地址,按回车键打开登录页面。', style='List Number')
P(doc, '2. 在登录页面,输入您的用户名和密码。', style='List Number')
P(doc, '3. 输入验证码(验证码不区分大小写)。', style='List Number')
P(doc, '4. 点击【登录】按钮,系统验证通过后跳转到首页。', style='List Number')
P(doc, '')
P(doc, '[截图:登录页面]')
P(doc, '图2-1 系统登录页面')
P(doc, '')
B(doc, '注意事项:')
P(doc, '首次登录时,系统会提示您修改初始密码,请设置一个安全的密码。', style='List Bullet')
P(doc, '密码连续错误5次,账户将被锁定10分钟,请妥善保管密码。', style='List Bullet')
P(doc, '如忘记密码,请联系系统管理员重置密码。', style='List Bullet')
doc.add_heading('2.3 界面介绍', level=2)
P(doc, '登录成功后,系统显示首页界面。首页由以下区域组成:')
T(doc, ['区域','位置','功能说明'], [
['顶部导航栏','页面顶部','显示系统名称、当前用户、退出登录等'],
['左侧菜单栏','页面左侧','显示系统功能菜单,点击可展开子菜单'],
['主内容区','页面中间','显示当前功能的操作界面'],
['标签页','主内容区上方','显示已打开的功能页面,可快速切换'],
])
P(doc, '')
P(doc, '[截图:首页界面]')
P(doc, '图2-2 系统首页界面')
doc.add_heading('3 功能操作', level=1)
doc.add_heading('3.1 突发事件管理', level=2)
P(doc, '突发事件管理模块用于上报和处理突发事件,是系统的核心功能之一。')
doc.add_heading('3.1.1 事件上报', level=3)
P(doc, '当发生突发事件时,用户可以通过系统上报事件信息。上报的事件将进入处置流程,由相关部门进行处理。')
B(doc, '操作步骤:')
P(doc, '1. 在左侧菜单栏,点击【突发事件管理】→【事件上报】。', style='List Number')
P(doc, '2. 在事件上报页面,填写事件基本信息:', style='List Number')
P(doc, ' - 事件标题:简要描述事件情况', style='List Bullet')
P(doc, ' - 事件类型:选择事件所属类型(安全生产、环境污染等)', style='List Bullet')
P(doc, ' - 事件等级:选择事件严重程度(一般/较大/重大/特别重大)', style='List Bullet')
P(doc, ' - 事件地址:输入或选择事件发生地点', style='List Bullet')
P(doc, ' - 事件描述:详细描述事件情况', style='List Bullet')
P(doc, '3. 点击【上传附件】按钮,上传现场照片等资料(可选)。', style='List Number')
P(doc, '4. 确认信息无误后,点击【提交】按钮完成上报。', style='List Number')
P(doc, '')
P(doc, '[截图:事件上报页面]')
P(doc, '图3-1 事件上报页面')
P(doc, '')
B(doc, '注意事项:')
P(doc, '带 * 的字段为必填项,必须填写完整才能提交。', style='List Bullet')
P(doc, '事件上报后,系统会自动生成事件编号,请妥善记录。', style='List Bullet')
P(doc, '如需修改已上报的事件,请在事件列表中找到对应事件进行修改。', style='List Bullet')
doc.add_heading('3.1.2 事件查询', level=3)
P(doc, '用户可以查询已上报的事件列表,支持按条件筛选和搜索。')
B(doc, '操作步骤:')
P(doc, '1. 在左侧菜单栏,点击【突发事件管理】→【事件列表】。', style='List Number')
P(doc, '2. 在查询区域,设置筛选条件(事件类型、状态、时间范围等)。', style='List Number')
P(doc, '3. 点击【查询】按钮,系统显示符合条件的事件列表。', style='List Number')
P(doc, '4. 点击事件标题,可查看事件详细信息。', style='List Number')
P(doc, '')
P(doc, '[截图:事件列表页面]')
P(doc, '图3-2 事件列表页面')
doc.add_heading('3.2 值班管理', level=2)
P(doc, '值班管理模块用于管理值班安排和值班记录,支持排班日历展示和签到签退功能。')
doc.add_heading('3.2.1 查看排班', level=3)
P(doc, '用户可以查看值班排班计划,了解自己和同事的值班安排。')
B(doc, '操作步骤:')
P(doc, '1. 在左侧菜单栏,点击【值班管理】→【值班计划】。', style='List Number')
P(doc, '2. 在排班日历页面,选择要查看的月份。', style='List Number')
P(doc, '3. 日历上会显示每天的值班人员和班次信息。', style='List Number')
P(doc, '4. 点击某一天,可查看当天的详细排班信息。', style='List Number')
P(doc, '')
P(doc, '[截图:排班日历页面]')
P(doc, '图3-3 排班日历页面')
doc.add_heading('3.2.2 签到签退', level=3)
P(doc, '值班人员在值班期间需要进行签到和签退操作,系统会记录签到签退时间。')
B(doc, '签到操作步骤:')
P(doc, '1. 在值班当天,进入系统首页。', style='List Number')
P(doc, '2. 点击首页的【签到】按钮。', style='List Number')
P(doc, '3. 系统记录签到时间,签到成功。', style='List Number')
P(doc, '')
B(doc, '签退操作步骤:')
P(doc, '1. 值班结束时,进入系统首页。', style='List Number')
P(doc, '2. 点击首页的【签退】按钮。', style='List Number')
P(doc, '3. 填写值班日志(可选)。', style='List Number')
P(doc, '4. 点击【确认签退】按钮,签退成功。', style='List Number')
P(doc, '')
B(doc, '注意事项:')
P(doc, '签到时间为班次开始后30分钟内,超过时间无法签到。', style='List Bullet')
P(doc, '签退前需要填写值班日志,记录值班期间的工作情况。', style='List Bullet')
doc.add_heading('3.3 预案管理', level=2)
P(doc, '预案管理模块用于管理各类应急预案,支持预案的创建、编辑、审核和发布。')
doc.add_heading('3.3.1 查看预案', level=3)
P(doc, '用户可以查看已发布的应急预案,了解预案内容和适用范围。')
B(doc, '操作步骤:')
P(doc, '1. 在左侧菜单栏,点击【预案管理】→【综合预案】。', style='List Number')
P(doc, '2. 在预案列表页面,浏览或搜索预案。', style='List Number')
P(doc, '3. 点击预案名称,查看预案详细内容。', style='List Number')
P(doc, '')
P(doc, '[截图:预案列表页面]')
P(doc, '图3-4 预案列表页面')
doc.add_heading('3.3.2 创建预案', level=3)
P(doc, '管理员可以创建新的应急预案。')
B(doc, '操作步骤:')
P(doc, '1. 在预案列表页面,点击【新增】按钮。', style='List Number')
P(doc, '2. 填写预案基本信息:预案名称、预案类型、适用范围等。', style='List Number')
P(doc, '3. 在富文本编辑器中编写预案内容。', style='List Number')
P(doc, '4. 上传相关附件(可选)。', style='List Number')
P(doc, '5. 点击【保存】按钮,预案保存为草稿状态。', style='List Number')
P(doc, '6. 如需发布,点击【提交审核】按钮,等待审核通过后自动发布。', style='List Number')
doc.add_heading('4 常见问题', level=1)
B(doc, 'Q1:无法登录系统怎么办?')
P(doc, 'A1:请检查以下几点:')
P(doc, '确认用户名和密码是否正确(注意区分大小写)。', style='List Bullet')
P(doc, '确认验证码是否输入正确。', style='List Bullet')
P(doc, '如果密码连续错误5次,账户会被锁定10分钟,请稍后再试。', style='List Bullet')
P(doc, '如仍无法登录,请联系系统管理员。', style='List Bullet')
B(doc, 'Q2:如何修改密码?')
P(doc, 'A2:点击页面右上角的用户名,选择【个人中心】→【修改密码】,输入原密码和新密码后保存即可。')
B(doc, 'Q3:如何上报事件?')
P(doc, 'A3:在左侧菜单栏点击【突发事件管理】→【事件上报】,填写事件信息后提交即可。详细操作请参考第3.1.1节。')
B(doc, 'Q4:如何查看值班安排?')
P(doc, 'A4:在左侧菜单栏点击【值班管理】→【值班计划】,在排班日历中查看值班安排。')
B(doc, 'Q5:忘记密码怎么办?')
P(doc, 'A5:请联系系统管理员重置密码。管理员可以在【系统管理】→【用户管理】中重置您的密码。')
doc.add_heading('5 附录', level=1)
doc.add_heading('5.1 快捷键说明', level=2)
T(doc, ['快捷键','功能说明'], [
['Ctrl + F','页面内搜索'],
['Ctrl + P','打印当前页面'],
['F5','刷新页面'],
['Esc','关闭弹窗'],
])
doc.add_heading('5.2 联系方式', level=2)
T(doc, ['联系方式','信息'], [
['系统管理员','张三,电话:13800138000'],
['技术支持','技术支持热线:400-xxx-xxxx'],
['问题反馈','邮箱:support@example.com'],
])
doc.save(output_path)
print(f'已生成:{output_path}')
if __name__ == '__main__':
import sys
output = sys.argv[1] if len(sys.argv) > 1 else 'user_manual.docx'
gen_user_manual(output)