山东大学标准试卷排版生成器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_ce094de0/sdu-exam-paper。
技能介绍
解决的问题
期末试卷排版从来不是一件轻松的事。山东大学各学院的试卷有统一的版式要求:A4 纵向、左侧装订线、固定的标题行格式、动态分值栏。人工用 Word 或 LaTeX 逐题排版,光调整对齐和分值汇总就要花大半天。如果需要 A/B/C 多卷,每卷都得重新排一遍,出错概率随卷数线性增长。
核心能力
这个技能把排版工作拆解为数据驱动的流程:题目内容写进 exam_data.json,渲染脚本负责校验和生成 HTML,最后统一导出 PDF。
- 数据与渲染分离:
meta字段控制试卷元信息(学年、学期、课程名),score_structure定义题型与分值,paperX数组存放每卷题目。改分值结构只需改 JSON,不必碰模板。 - 自动校验:渲染前检查每卷各题型分值之和与
score_structure是否一致、总分是否正确、coverage_keywords是否全部出现在题目的focus标签中。错误在生成阶段就被拦下。 - 动态版式:得分栏列数、题型标题、答题提示都根据
score_structure自动生成,填空题用stem单行,简答/计算题用stem_paragraphs多段配answer_points要点数组。 - A/B 多卷并行:在
paper_codes中声明卷别,脚本为每卷独立渲染题目页和答案页。
关键步骤
- 从用户输入提取试卷元信息和题目内容,写入
exam_data.json - 运行渲染脚本,脚本自动校验分值、覆盖关键词并生成 A/B 卷 HTML
- 调用
html_to_pdf.py(依赖 Playwright Chromium)导出 PDF
注意事项
- PDF 导出依赖 Playwright Chromium 环境,需预先安装浏览器二进制
- 模板 CSS 变量(
--left-gutter、--page-width、--font-main)可调整版式,但修改前建议备份 - 填空题答案用
answer字段,主观题用answer_points,混用会导致渲染异常 - 试卷编号需在
paper_codes中显式声明,未声明的卷别不会被渲染
使用场景
- 期末复习冲刺阶段,专业课老师需要快速将课程重点内容编排成符合山大标准的A4版式期末试卷并导出PDF打印
- 教务排考阶段,教学秘书需要一次性生成同一课程的A、B两套试卷,确保题型分值结构完全一致且互不重复
- 课程组命题阶段,多位老师分工编写题目后,需要将不同题型的题干与答案集合按统一模板自动合并渲染
- 补考或重修考前,辅导员需要从题库中抽取部分题目,快速生成一套总分100分、附带详细答案的纸质试卷
适合人员
- 高校专业课教师:需要在期末将课程重点快速排版为标准试卷,免去手动调整Word版式的时间
- 高校教学秘书:负责多个班级的排考工作,需要批量生成A/B/C卷并确保分值结构符合教务规范
- 课程命题组:多人协作编写试卷,需要将不同题型的题目统一渲染进同一模板并生成标准答案页
- 研究生助教:协助导师整理复习资料,需要将章节练习题排版成格式规范、可直接打印的模拟试卷