山东大学标准试卷排版生成器

SKILL效率
效率 未标注权限 许可证不明确
安装这个技能

复刻山东大学标准试卷版式,生成任意专业课期末考试试卷(HTML+PDF)。当用户提到"山大试卷""山东大学期末试卷""出试卷""考试卷""期末试卷排版"等需求时使用此技能。支持自定义课程名、学年学期、题型分值结构、A/B 卷、参考答案与评分要点,得分栏与题型标题根据分值结构动态生成,适合现代通信原理、电力电子等任意专业课。

一句话选型结论

按资料字段整理

山东大学标准试卷排版生成器是效率类的 Agent Skill,安装方式未标注,权限级别未标注,许可证不明确,有可直接复制的安装命令。技能本质是给模型读的说明书,效果取决于模型与客户端;装完先用一个小任务验证,再放进正式流程。

分类效率 安装方式未标注 权限级别未标注权限 许可证许可证不明确
累计安装 未标注 本周 未标注
GitHub 星标 未标注 仓库 未标注
下载量 未标注 技能市场下载数
权限级别 未标注权限 安装前请确认风险范围
许可证 许可证不明确 未说明

安装

未标注
在支持 Skills 的客户端里执行,装完问一句「你有哪些技能」验证
skillhub install user_ce094de0/sdu-exam-paper
  1. 1
    确认客户端支持

    确认你的客户端支持 Skills(Claude、Codex、Cursor 等),并升级到较新的版本。

  2. 2
    拿到技能文件

    执行上面的命令安装;也可以把仓库里的 SKILL.md 手动放进客户端的 skills 目录。

  3. 3
    刷新技能列表

    重新打开客户端,或刷新技能列表,让新放进来的技能被加载。

  4. 4
    验证是否生效

    问一句「你有哪些技能」,确认列表里出现它,再拿一个小任务试跑。

技能档案

效率
字段来自技能仓库与公开索引,中文说明由本站标注
作者 / 维护方user_ce094de0仓库 未标注 · 版本 未标注
宿主客户端未标注技能可被这些客户端加载
安装方式未标注安装包 community
权限级别未标注权限安装前请确认风险范围
许可证未说明许可证不明确,商用前请自行确认条款
仓库可用性available技能仓库当前是否可访问
最近核验未标注上游最后核验时间 · 数据更新 1791737287
正文体量6.5 KBSKILL.md 原文大小,越大说明说明书写得越细

典型使用场景

3 类
按分类整理的常见用法,具体以 SKILL.md 为准
整理待办与日程

把零散任务收进清单,排出优先级。

批量处理重复任务

把固定动作做成模板,重复执行。

把流程写成清单

把口头流程整理成可复用的步骤。

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有标注权限级别,实际能做什么要装好后确认。
  • 许可证不明确,商用或二次分发前先到仓库确认条款。
  • 没有做站内核验,内容以作者仓库为准。
  • 技能只是说明书,实际效果取决于模型与客户端,装完先用小任务试一遍。

更适合

  • 需要在效率场景里给模型补一套做法的人。
  • 愿意先读一遍 SKILL.md、确认它会让模型做什么的人。

不太适合

  • 对许可证要求很严、必须明确可商用的人。
  • 只想装完就自动变强、不打算看说明书的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
技能权限级别安装方式累计安装宿主客户端安装命令
山东大学标准试卷排版生成器当前 未标注权限 未标注 未标注 未标注 有
Nano PDF 文档 联网访问 ClawHub 市场 424.9 万 OpenClaw 有
自动更新程序 浏览器控制 ClawHub 市场 296.4 万 OpenClaw 有
Gemini 助手 联网访问 ClawHub 市场 254.7 万 OpenClaw 有
word DOCX 文档 联网访问 ClawHub 市场 239.6 万 OpenClaw 有
Excel XLSX 前端 联网访问 ClawHub 市场 227.0 万 OpenClaw 有

SKILL.md 全文

6.5 KB
模型实际读到的说明书原文,来自技能仓库

山东大学试卷风格制作技能

将课程重点内容自动编排为山东大学标准版式试卷,输出 HTML + PDF,可用于任意专业课期末考试复刻。

适用场景

  • 现代电力电子变换技术、现代通信原理、电力系统分析等任意专业课期末试卷
  • 期中/期末/补考/重修卷,支持 A/B/C 多卷
  • 题型数量和分值结构完全可配置(不限于三种题型)

工作流程

步骤 1:收集试卷信息

向用户确认或从用户输入中提取:

字段 说明 示例
school 学校名称 山东大学
course_name 课程名 现代通信原理
academic_year 学年 2025-2026学年
semester 学期 第2学期
paper_codes 试卷编号 ["A", "B"]
score_structure 题型与分值结构 见下方示例
exam_note 注意事项 默认即可
coverage_keywords 重点覆盖词 从用户重点列表提取
question_content 题目与答案 由用户给出或按重点出题

步骤 2:创建输出目录与数据文件

<输出目录>/
├── exam_data.json          # 结构化题库
├── sdu_exam_template.html  # 从本技能 assets/ 复制
├── render_exams.py         # 从本技能 scripts/ 复制
├── <课程名>期末试卷A卷.html
├── <课程名>期末试卷A卷.pdf
├── <课程名>期末试卷B卷.html
└── <课程名>期末试卷B卷.pdf

步骤 3:编写 exam_data.json

JSON 结构(分值结构完全可配置):

{
  "meta": {
    "school": "山东大学",
    "paper_title": "课程试卷",
    "course_name": "现代通信原理",
    "academic_year": "2025-2026学年",
    "semester": "第2学期",
    "exam_note": "请考生将答案写在答题区内。",
    "coverage_keywords": ["关键词1", "关键词2"],
    "score_structure": [
      {"key": "fill_blank", "name": "填空题", "score": 30, "count": 6, "hint": "请在横线上填写最准确的术语或公式。"},
      {"key": "short_answer", "name": "简答题", "score": 40, "count": 4, "hint": "回答要条理清晰、概念准确。"},
      {"key": "comprehensive", "name": "综合题", "score": 30, "count": 2, "hint": "综合分析题要求系统作答。"}
    ]
  },
  "paperA": {
    "paper_code": "A",
    "fill_blank": [
      {
        "no": 1, "score": 5,
        "chapter": "第一章",
        "focus": ["重点标签"],
        "stem": "题干______。",
        "answer": "答案。"
      }
    ],
    "short_answer": [
      {
        "no": 7, "score": 10,
        "chapter": "第二章",
        "focus": ["重点标签"],
        "stem_paragraphs": ["第一段", "第二段"],
        "answer_points": ["要点1", "要点2"]
      }
    ],
    "comprehensive": [
      {
        "no": 11, "score": 15,
        "chapter": "第三章",
        "focus": ["重点标签"],
        "stem_paragraphs": ["题干", "(1)...", "(2)..."],
        "answer_points": ["要点1", "要点2"]
      }
    ]
  },
  "paperB": { "...同结构..." }
}

score_structure 说明:

字段 必填 说明
key 是 对应 paperX 中的题目数组键名
name 是 题型显示名称(如"填空题""计算题""论述题")
score 是 该题型总分
count 否 该题型题数(用于得分栏显示)
hint 否 该题型下方的答题提示

每题必须包含: no(题号)、score(分值)、chapter(章节)、focus(重点标签数组)、题干、答案。
- 填空题:用 stem(单行),答案用 answer(简短填空答案)。
- 简答/综合/计算题:用 stem_paragraphs(多段),答案用 answer_points(要点数组)。

步骤 4:运行渲染脚本

python <输出目录>/render_exams.py <输出目录>

脚本自动完成:
1. 校验每卷分值与 score_structure 中定义的各题型总分一致
2. 校验总分正确
3. 校验重点覆盖(所有 coverage_keywords 必须出现在题目的 focus 中)
4. 渲染 A/B 卷 HTML(题目页 + 答案页)

步骤 5:导出 PDF

python <math-exercise-pdf脚本路径> "<输出目录>/<课程名>期末试卷A卷.html" "<输出目录>/<课程名>期末试卷A卷.pdf" --force
python <math-exercise-pdf脚本路径> "<输出目录>/<课程名>期末试卷B卷.html" "<输出目录>/<课程名>期末试卷B卷.pdf" --force

PDF 导出统一使用 .trae\skills\math-exercise-pdf\scripts\html_to_pdf.py(依赖 Playwright Chromium)。

模板版式说明

assets/sdu_exam_template.html 提供山东大学标准试卷版式:

  • A4 纵向,黑白打印友好
  • 首页:学校名 + 课程试卷 + 课程号占位 + 学年学期
  • 标题行:山东大学 + 课程名 + A/B卷
  • 得分栏:根据 score_structure 动态生成列数和分值
  • 左侧装订线:姓名、学院、学号、专业(纵向排列)
  • 注意事项框
  • 正文分节:根据 score_structure 动态生成题型标题和提示
  • 答案页:独立分页,同风格边框与装订线

自定义指南

修改课程名和元信息

编辑 exam_data.json 中的 meta 字段即可。

调整分值结构

修改 meta.score_structure 数组即可,得分栏、题型标题、分值校验均自动适配。
例如:填空30 + 计算45 + 论述25 = 100 或 选择20 + 填空20 + 简答30 + 计算30 = 100。

增加/减少题型

在 score_structure 中增减条目,并在 paperX 中对应增减题目数组即可。

修改版式

编辑 assets/sdu_exam_template.html 中的 CSS 变量:
- --left-gutter:装订线宽度
- --page-width / --page-height:纸张尺寸
- --font-main:字体族

依赖要求

pip install playwright pymupdf
playwright install chromium

验证清单

  • [ ] 每卷各题型分值之和与 score_structure 一致
  • [ ] 总分正确
  • [ ] 重点覆盖关键词无遗漏
  • [ ] HTML 无 {{ 占位符残留
  • [ ] PDF 可正常打开,版式与样张高度一致
  • [ ] 答案位于各卷末尾,与题目一一对应

常见问题

5 问
答案由本站依据条目字段整理
山东大学标准试卷排版生成器怎么安装?

在支持 Skills 的客户端里执行:skillhub install user_ce094de0/sdu-exam-paper。安装方式为未标注。装完刷新技能列表或重开客户端。

山东大学标准试卷排版生成器支持哪些客户端?

资料没有标注宿主客户端,但只要客户端支持 Skills(Claude、Codex、Cursor 等),一般都能加载。

山东大学标准试卷排版生成器权限高吗,安全吗?

权限级别为未标注权限。安装前先看它会读取或写入哪些内容。

山东大学标准试卷排版生成器收费吗?

本站不代收费用,也没有标注具体价格。是否收费取决于技能本身和所用的模型或客户端,正式使用前按作者说明确认。

山东大学标准试卷排版生成器用什么许可证?

许可证标注为 未说明(许可证不明确)。商用或二次分发前请到仓库确认条款原文。

热门专题

按场景挑技能
全部专题 →

技能内容以作者仓库为准;分类、权限级别与许可证状态的中文说明为中文整理,最近核验 未标注。