- 20 列表格:序号 / 学号 / 姓名 / 第 1~17 周 - A4 横向 297x210mm,单页 30 行 - 课程信息区:课程名称、课程号、选课号、学分、任课教师、学年学期 - 字体来自 ../fonts.tex,与其他模板一致 - 已加入 verify_all.sh 全库 17/17 编译通过,点名册 1 页、error 0、Overfull 0。
点名册
中国海洋大学课程点名册,A4 横向,20 列考勤表。
编译
cd 点名册
xelatex 点名册.tex
或仓库根:bash build.sh 点名册
文件
| 文件 | 说明 |
|---|---|
点名册.tex |
主文件,课程信息与学生名单改这里 |
oucroll.sty |
版式包,一般不改 |
课程信息
\rollsetcourse{数字逻辑} % 课程名称
\rollsetcno{080502101231} % 课程号
\rollsetsno{25252029} % 选课号
\rollsetcredit{2.5} % 学分
\rollsetteacher{张远航} % 任课教师
\rollsetterm{2025 学年 秋 季学期} % 学年学期
| 命令 | 说明 |
|---|---|
\rollsetcourse{} |
课程名称 |
\rollsetcno{} |
课程号 |
\rollsetsno{} |
选课号 |
\rollsetcredit{} |
学分 |
\rollsetteacher{} |
任课教师 |
\rollsetterm{} |
学年学期 |
设完后调 \rollinfo 印出信息区:
\rolltitle{中国海洋大学点名册}
\rollsetcourse{数字逻辑}
...
\rollinfo
学生名单
每人一行,三列:序号、学号、姓名。后面 17 周留空手填。
\begin{rolltable}
\rollrow{1}{2525201001}{陈嘉禾}
\rollrow{2}{2525201002}{丁若彤}
...
\end{rolltable}
| 参数 | 说明 |
|---|---|
| 第 1 个 | 序号 |
| 第 2 个 | 学号 |
| 第 3 个 | 姓名 |
增删学生就增删 \rollrow 行。
一页能放多少行
A4 横向(297 × 210mm),上下边距 14/16mm,扣掉标题、课程信息、表头:
| 行高 | 一页行数 |
|---|---|
| 5.0mm | 27 行 |
| 4.5mm(默认) | 30 行 |
| 4.2mm | 33 行 |
超过这个数会溢出到第二页。要放更多学生,两个办法:
- 改
oucroll.sty里row{2-Z}={ht=4.5mm}的行高 - 分两页,每页 30 人,第二页重复表头
表头
20 列表头依次是:序号、学号、姓名、1、2、3 …… 17。
周次列只写数字,不写「第 N 周」,因为横向空间有限。
改列宽或改周数,编辑 oucroll.sty:
\newcommand{\rollwno}{9mm} % 序号
\newcommand{\rollwid}{26mm} % 学号
\newcommand{\rollwname}{20mm} % 姓名
\newcommand{\rollwweek}{11.4734mm} % 每周
改列宽时必须重算,让总和恰好等于版心宽:
版心 = 297 − 14×2 = 269mm
表宽 = Σwd + 2×0.4×20(colsep)+ 0.4pt×20(竖线) = Σwd + 18.82mm
∴ Σwd = 269 − 18.82 = 250.18mm
表尾说明
\rollfoot{标记方式自行约定(如「√」出席、「缺」缺席、「假」请假)。}
不要就删掉这一行。
版式
A4 横向 297 × 210 mm
边距 左右 14mm,上 12mm,下 16mm
标题 20pt 黑体居中
课程信息 10.5pt,两行三项
表格 20 列 × (1 表头 + N 数据行)
表头行高 7.0mm,数据行高 4.5mm
正文 10.5pt,表头 8pt,表体 10pt
不排页码
注意
示例学生名单是虚构数据,使用时全部替换。