新增成绩构成说明 LaTeX 模板(成绩构成说明/) #9

Closed
opened 2026-10-27 01:15:57 +00:00 by laoyang · 3 comments
Owner

新增成绩构成说明 LaTeX 模板(成绩构成说明/)

把任课教师手写的《成绩构成说明》做成 LaTeX 模板,与已有的
试卷归档封面/、试卷归档目录/、课程教学日历/ 保持同一套做法
(版式参数注明换算过程、字体取仓库公共字体包、真实数据全换占位符)。

背景

学校下发的原件是一份填过的实例:两段流水账文字 + 标题,没有表格、
没有签字栏。用户评价「不算特别好,你再优化一下」,并明确要求
补上任课教师签字的地方和年月日。

产出

文件 说明
成绩构成说明/oucgrade.sty 版式包,10 节,全部尺寸附换算注释
成绩构成说明/成绩构成说明.tex 内容,10 个信息宏 + 3 节正文
成绩构成说明/成绩构成说明.pdf 成品,1 页
成绩构成说明/README.md 用法 + 相对原件的 4 项改进 + 5 个坑 + 参数表

相对原件的 4 项改进

① 拆掉「三层百分数混用不同基准」的歧义(核心)

原件原文:

理论课成绩占总成绩的80%。理论课成绩包括平时成绩、期末考试成绩。
平时成绩占30%(作业占20%,点名占10%),期末考试成绩占70%。
实验成绩占总成绩的20%。由实验课老师提供。

问题在于百分数的基准不是同一个:

句子 百分数 基准实际是 折总成绩
理论课占总成绩的 80% 80% 总成绩 80%
平时成绩占 30% 30% 理论课 24%
作业占 20% 20% 理论课 16%
期末占 70% 70% 理论课 56%

「平时占 30%」看着像占总成绩三成,实际只有 24%。这是教务抽查
最常挑错的地方,学生也容易误读。

改法:表格并置「占本类」与「占总成绩」两列,后者由 \grdcalc
自动算出(\grdcalc{80}{30} → 24),不给心算留余地。

② 层级从句子搬进表格

6 列表格,一级项目跨行合并:项目 / 占本类 / 细分项目 / 占本类 /
占总成绩 / 评定依据。

③ 补「怎么算」这一层

原件只说比例,没说作业怎么平均、缺交怎么扣、点名缺几次记 0 ——
这些是学生真会问的、也是申诉依据。新增「二、分项说明」用列表写清。

④ 补签字栏(用户明确要求)

右下角落款,含签字线(\rule 40mm)和「20×× 年 月 日」。
没有任课教师签字的成绩构成说明,教务归档时不认。

另新增「三、成绩评定与异议」一节(说明取整与申诉期限),
用 \def\grdwithini{0} 可一键关闭。

附带做了个小工具:比例自洽校验

模板会自动检查三组加法:

平时 + 期末     = 100
作业 + 点名     = 平时
理论课 + 实验课 = 100

不通过时 .log 打警告,PDF 标题正下方印一行红字提示。

为什么做这个:原件那句「平时 30%(作业 20%,点名 10%)」
正是靠心算才看得出 20+10=30。这类算术错误在一份要归档的文件里
很难被自己发现,写进模板检查比在 README 写「请自查」可靠。

已做负面测试(关键,证明确实有用而不是摆设):

操作 .log PDF
\grdhw 20 → 25 比例不自洽 --- 作业+点名: 实际 25+10, 应为 30 第 1 页顶部出现警告
改回 20 无 无

警告放开头而不是文末 —— 文末会被签字栏挤到第 2 页,没人翻就等于没提示。

验收

  • 1 页、零警告(Overfull / Underfull / Missing character 全 0)
  • 内容底 769.8pt,版心底 771.6pt,余 1.8pt,不出界
  • 表格数值实测正确:80% = 24%(平时) + 56%(期末),+ 20%(实验) = 100%
  • 干净克隆重编,md5 完全一致(f6d2052e80b2)
  • 真实数据零泄漏:数字逻辑 / 2025 / 秋季 / 杨永全 /
    实验课老师 等关键词在 .sty 与 .tex 中全部零命中(含注释)

五个坑(都写进 README 了)

① .tex 里不能写带 @ 的宏名
@ 在 .tex 中 catcode 是 12 不是 11,写 \grd@chk 会被拆成
\grd + @chk,报 Missing \begin{document} 并连累后面所有内容。
规矩:带 @ 的宏定义在 .sty,.tex 只调公开接口。

② tabularray 的 hline{} 里不能用带 @ 的宏
它把参数当字符串重新 tokenize,此时 catcode 已退化,宏名在 @ 处断开,
报 \l__tblr_v_tl ->\grd @rulev。规矩:线宽写字面值 {0.5pt}。

③ 签字栏被挤到第 2 页(试了四种写法)

写法 结果
\par\vspace{4mm} + minipage ✗ 翻页
\vfill 顶到底部 ✗ 不翻页但出界(年月日 y=774.9 > 版心底 771.6)
\vfill + 块内 \vspace*{5mm} ✗ 又翻页(\vfill 与块高之和超额时 TeX 只搬块不压胶)
\par\vspace{3mm} + minipage ✓ 一页,余 1.8pt

结论:单页文档里别指望竖直胶自动贴底,固定间距 + 实测校准最稳。

④ minipage 内部用 \hfill 做右对齐 → 字距被拉到 34.8pt 一字
正解:内部 \raggedright,\hfill 只放外面
(\makebox[\textwidth][r]{...})。

⑤ 列表引导符「·」缺字
本库 OUC Serif 子集没有 ·(U+00B7) 和 •(U+2022),
报 Missing character,印出来空白。实测有 ●(U+25CF) 可用,
且 fonts.tex 已把它归入 CJK 字符类。

字体

全部走 ../fonts.tex。原件标题用方正楷体_GB2312(商业字体,
不能分发),改用语霞鹜文楷(同属楷书形态,SIL OFL 1.1)。
这是有意的替换,已在 README 注明,不是遗漏。

顺带更新

  • 根 README.md:模板表加一行,计数 9 → 10
  • fonts.tex 头注释:九个模板 → 十个模板

为什么单独建单

#8 是课程教学日历(附件3,16周表格)的模板;本单是成绩构成说明,原件、版式、验收标准完全不同,是独立的新交付物,可单独验收。用户同一次发言里提了两件事:①新做成绩构成说明 ②教学日历删掉考核方式那一行 —— ②已作为补充追加到 #8。

## 新增成绩构成说明 LaTeX 模板(成绩构成说明/) 把任课教师手写的《成绩构成说明》做成 LaTeX 模板,与已有的 `试卷归档封面/`、`试卷归档目录/`、`课程教学日历/` 保持同一套做法 (版式参数注明换算过程、字体取仓库公共字体包、真实数据全换占位符)。 ### 背景 学校下发的原件是一份**填过的实例**:两段流水账文字 + 标题,没有表格、 没有签字栏。用户评价「不算特别好,你再优化一下」,并明确要求 **补上任课教师签字的地方和年月日**。 ### 产出 | 文件 | 说明 | |---|---| | `成绩构成说明/oucgrade.sty` | 版式包,10 节,全部尺寸附换算注释 | | `成绩构成说明/成绩构成说明.tex` | 内容,10 个信息宏 + 3 节正文 | | `成绩构成说明/成绩构成说明.pdf` | 成品,1 页 | | `成绩构成说明/README.md` | 用法 + 相对原件的 4 项改进 + 5 个坑 + 参数表 | ### 相对原件的 4 项改进 **① 拆掉「三层百分数混用不同基准」的歧义(核心)** 原件原文: > 理论课成绩占总成绩的80%。理论课成绩包括平时成绩、期末考试成绩。 > 平时成绩占30%(作业占20%,点名占10%),期末考试成绩占70%。 > 实验成绩占总成绩的20%。由实验课老师提供。 问题在于百分数的**基准不是同一个**: | 句子 | 百分数 | 基准实际是 | 折总成绩 | |---|---:|---|---:| | 理论课占总成绩的 80% | 80% | 总成绩 | 80% | | 平时成绩占 30% | 30% | **理论课** | 24% | | 作业占 20% | 20% | **理论课** | 16% | | 期末占 70% | 70% | **理论课** | 56% | 「平时占 30%」看着像占总成绩三成,实际只有 **24%**。这是教务抽查 最常挑错的地方,学生也容易误读。 改法:表格并置「占本类」与「占总成绩」两列,后者由 `\grdcalc` 自动算出(`\grdcalc{80}{30}` → `24`),不给心算留余地。 **② 层级从句子搬进表格** 6 列表格,一级项目跨行合并:项目 / 占本类 / 细分项目 / 占本类 / 占总成绩 / 评定依据。 **③ 补「怎么算」这一层** 原件只说比例,没说作业怎么平均、缺交怎么扣、点名缺几次记 0 —— 这些是学生真会问的、也是申诉依据。新增「二、分项说明」用列表写清。 **④ 补签字栏(用户明确要求)** 右下角落款,含签字线(`\rule` 40mm)和「20×× 年 月 日」。 没有任课教师签字的成绩构成说明,教务归档时不认。 另新增「三、成绩评定与异议」一节(说明取整与申诉期限), 用 `\def\grdwithini{0}` 可一键关闭。 ### 附带做了个小工具:比例自洽校验 模板会自动检查三组加法: ``` 平时 + 期末 = 100 作业 + 点名 = 平时 理论课 + 实验课 = 100 ``` 不通过时 `.log` 打警告,PDF **标题正下方**印一行红字提示。 **为什么做这个**:原件那句「平时 30%(作业 20%,点名 10%)」 正是靠心算才看得出 20+10=30。这类算术错误在一份要归档的文件里 很难被自己发现,写进模板检查比在 README 写「请自查」可靠。 **已做负面测试**(关键,证明确实有用而不是摆设): | 操作 | `.log` | PDF | |---|---|---| | `\grdhw` 20 → 25 | `比例不自洽 --- 作业+点名: 实际 25+10, 应为 30` | 第 1 页顶部出现警告 | | 改回 20 | 无 | 无 | 警告放**开头**而不是文末 —— 文末会被签字栏挤到第 2 页,没人翻就等于没提示。 ### 验收 - **1 页、零警告**(Overfull / Underfull / Missing character 全 0) - 内容底 769.8pt,版心底 771.6pt,余 1.8pt,**不出界** - 表格数值实测正确:80% = 24%(平时) + 56%(期末),+ 20%(实验) = 100% - 干净克隆重编,**md5 完全一致**(`f6d2052e80b2`) - **真实数据零泄漏**:`数字逻辑` / `2025` / `秋季` / `杨永全` / `实验课老师` 等关键词在 `.sty` 与 `.tex` 中全部零命中(含注释) ### 五个坑(都写进 README 了) **① `.tex` 里不能写带 `@` 的宏名** `@` 在 `.tex` 中 catcode 是 12 不是 11,写 `\grd@chk` 会被拆成 `\grd` + `@chk`,报 `Missing \begin{document}` 并**连累后面所有内容**。 规矩:带 `@` 的宏定义在 `.sty`,`.tex` 只调公开接口。 **② tabularray 的 `hline{}` 里不能用带 `@` 的宏** 它把参数当字符串重新 tokenize,此时 catcode 已退化,宏名在 `@` 处断开, 报 `\l__tblr_v_tl ->\grd @rulev`。规矩:线宽写字面值 `{0.5pt}`。 **③ 签字栏被挤到第 2 页(试了四种写法)** | 写法 | 结果 | |---|---| | `\par\vspace{4mm}` + minipage | ✗ 翻页 | | `\vfill` 顶到底部 | ✗ 不翻页但**出界**(年月日 y=774.9 > 版心底 771.6) | | `\vfill` + 块内 `\vspace*{5mm}` | ✗ 又翻页(`\vfill` 与块高之和超额时 TeX 只搬块不压胶) | | `\par\vspace{3mm}` + minipage | ✓ 一页,余 1.8pt | 结论:单页文档里别指望竖直胶自动贴底,**固定间距 + 实测校准**最稳。 **④ minipage 内部用 `\hfill` 做右对齐 → 字距被拉到 34.8pt 一字** 正解:内部 `\raggedright`,`\hfill` 只放外面 (`\makebox[\textwidth][r]{...}`)。 **⑤ 列表引导符「·」缺字** 本库 OUC Serif 子集**没有** `·`(U+00B7) 和 `•`(U+2022), 报 `Missing character`,印出来空白。实测有 `●`(U+25CF) 可用, 且 `fonts.tex` 已把它归入 CJK 字符类。 ### 字体 全部走 `../fonts.tex`。原件标题用**方正楷体_GB2312**(商业字体, 不能分发),改用语霞鹜文楷(同属楷书形态,SIL OFL 1.1)。 这是**有意的替换**,已在 README 注明,不是遗漏。 ### 顺带更新 - 根 `README.md`:模板表加一行,计数 9 → 10 - `fonts.tex` 头注释:九个模板 → 十个模板 --- ### 为什么单独建单 #8 是课程教学日历(附件3,16周表格)的模板;本单是成绩构成说明,原件、版式、验收标准完全不同,是独立的新交付物,可单独验收。用户同一次发言里提了两件事:①新做成绩构成说明 ②教学日历删掉考核方式那一行 —— ②已作为补充追加到 #8。
Author
Owner

验收与收尾

提交 a29f193 新增成绩构成说明 LaTeX 模板(成绩构成说明/) #9,已推送 origin/main。

交付

文件 说明
成绩构成说明/oucgrade.sty 版式包,10 节,尺寸全部附换算注释
成绩构成说明/成绩构成说明.tex 内容,10 个信息宏 + 3 节正文
成绩构成说明/成绩构成说明.pdf 成品,1 页
成绩构成说明/README.md 用法 + 4 项改进说明 + 5 个坑 + 参数表

最终验收

项 结果
页数 1 页
Overfull / Underfull / Missing character 0 / 0 / 0
内容底 vs 版心底 769.8pt vs 771.6pt,余 1.8pt,不出界
表格算术 80% = 24%(平时) + 56%(期末);+ 20%(实验) = 100%
干净克隆重编 md5 f6d2052e80b2,完全一致
真实数据泄漏 数字逻辑/2025/秋季/杨永全/实验课老师 全部零命中
比例校验负面测试 \grdhw 20→25 时 log 报「实际 25+10,应为 30」,PDF 顶部现警告;改回后消失

一点说明

这一轮花时间最多的地方不是写文档,是签字栏定位(README 坑 3)。
试了 \vspace / \vfill / \vfill+块内留白 三种,前两种分别导致
翻页和出界,第三种又回到翻页。最后用固定 \vspace{3mm} + 实测校准
才同时满足「一页」「不出界」。

教训:单页文档里不要指望竖直胶自动贴底。TeX 的 \vfill 是
可伸缩胶,但当它与不可压缩的块高之和超过剩余空间时,它不会"尽量压缩",
而是接受一次坏断页 —— 表现就是「明明还剩 66pt,却翻页了」。
这种情况调 \vfill 永远调不出来,必须换成固定间距。

## 验收与收尾 提交 `a29f193` 新增成绩构成说明 LaTeX 模板(成绩构成说明/) #9,已推送 `origin/main`。 ### 交付 | 文件 | 说明 | |---|---| | `成绩构成说明/oucgrade.sty` | 版式包,10 节,尺寸全部附换算注释 | | `成绩构成说明/成绩构成说明.tex` | 内容,10 个信息宏 + 3 节正文 | | `成绩构成说明/成绩构成说明.pdf` | 成品,**1 页** | | `成绩构成说明/README.md` | 用法 + 4 项改进说明 + 5 个坑 + 参数表 | ### 最终验收 | 项 | 结果 | |---|---| | 页数 | 1 页 | | Overfull / Underfull / Missing character | **0 / 0 / 0** | | 内容底 vs 版心底 | 769.8pt vs 771.6pt,余 1.8pt,不出界 | | 表格算术 | 80% = 24%(平时) + 56%(期末);+ 20%(实验) = **100%** | | 干净克隆重编 md5 | `f6d2052e80b2`,**完全一致** | | 真实数据泄漏 | `数字逻辑`/`2025`/`秋季`/`杨永全`/`实验课老师` 全部零命中 | | 比例校验负面测试 | `\grdhw` 20→25 时 log 报「实际 25+10,应为 30」,PDF 顶部现警告;改回后消失 | ### 一点说明 这一轮花时间最多的地方不是写文档,是**签字栏定位**(README 坑 3)。 试了 `\vspace` / `\vfill` / `\vfill+块内留白` 三种,前两种分别导致 翻页和出界,第三种又回到翻页。最后用固定 `\vspace{3mm}` + 实测校准 才同时满足「一页」「不出界」。 教训:**单页文档里不要指望竖直胶自动贴底**。TeX 的 `\vfill` 是 可伸缩胶,但当它与不可压缩的块高之和超过剩余空间时,它不会"尽量压缩", 而是接受一次坏断页 —— 表现就是「明明还剩 66pt,却翻页了」。 这种情况调 `\vfill` 永远调不出来,必须换成固定间距。
laoyang reopened this issue 2026-10-27 01:45:56 +00:00
Author
Owner

追加需求(用户反馈)

中间表格,要把线都画上,中间空白的容易看错行。最后的年月日,也不要带20xx了。

两处都属本单范围,不另开单。

① 表格格线全画

原来只画外框 + 表头分割线(hline{1,Z} + hline{2} + vline{1,Z}),
数据行之间和列之间全是空白,跨行格(理论课)与单行格的分界也看不出来,
容易看错行。

改为 hline{1-Z}={0.5pt} 与 vline{1-Z}={0.5pt},所有格线全画。

连带必须改列宽:只画外框时表宽里不含内部竖线;画上 5 条内部竖线后
表宽多出 5×0.5 = 2.5pt,编译直接报
Overfull \hbox (2.47554pt too wide)。最后一列 30.28mm → 29.40mm 补回。

连带暴露出一个被掩盖的缺陷:「理论课」左边跨 2 行,但右边「平时成绩
(作业 20%、点名 10%)」只占 row2 一行、在 26mm 列里折 3 行,自然高
正好 54.73pt —— 于是 row2 被撑到 54.73pt,文字上下零留白,末行
「10%)」的墨迹底离行线只剩 0.90pt(0.32mm),而同一张表其他行是
4.97pt(1.75mm)。只画外框时那里本来没有线,缺陷完全被掩盖。

治法:row{2}={ht=22mm}。关键是 ht 是最小高度,给了还得比内容高才
起作用
—— 先试 12.5mm(35.4pt < 54.73pt)完全没反应,给到 22mm
(62.4pt)才把行撑到 62.86pt,上下各留约 3.8pt,末行墨迹底离行线
4.08pt(1.44mm),与其他行同量级。
另注:ht 按表格行号给,抬高 row{3}(期末行)只移动中间那条线,
对跨行块高度没有影响。

顺带把「由实验课教师评定」缩为「实验教师评定」(2 行 → 1 行),
省出 11.3pt 给上面那个 3 行格用。

② 签字栏去掉年份

\hspace*{2\ccwd}20××~年\hspace*{1.2em}月\hspace*{1.2em}日
→ \hspace*{2\ccwd}年\hspace*{1.2em}月\hspace*{1.2em}日

成绩构成说明是学期末签署的文件,年份由签字人当场手写;模板里预留
20×× 反而占掉手写空间、并诱导使用者去改占位符。

③ 顺带修掉的真实数据泄漏(3 处)

复查泄漏时发现本单上一版遗留:

  • README.md 第 85 行:引用原件全文时把真实课程名与学年原样贴出
  • README.md 第 297 行:「真实数据零泄漏」这一节为了证明零泄漏,
    反而把真实课程名、学年、教师姓名原样列了出来
    —— 自相矛盾
  • 成绩构成说明.tex:「闭卷笔试」是原件事实,改为 ××考试

前者改占位符,中间那条删掉关键词清单、改为文字说明,
后者改占位。已复查 10 个关键词全部零命中(2022 剩余 3 处为
U+2022 码位与 TeX Live 版本号,属误报)。

验收(实测)

  • 1 页,零 Overfull / Underfull / Missing character
  • 格线:横线 6 条全宽 + 1 条合计行下方,竖线 7 条按行分段、
    跨行格内无中线、合计行跨 6 列无内部竖线(逐条清点确认)
  • 逐字符交叉校验:表格区内越列 0 处、越行 0 处
  • 末行墨迹底与行线间隙:1.44mm(改前 0.32mm)
  • 签字栏只剩「年 月 日」,x = 313.84 / 340.23 / 366.63
  • 内容底 764.71pt,版心底 769.89pt,余量 5.18pt 不出界
  • 真实数据 10 个关键词零命中(含注释与 README)
## 追加需求(用户反馈) > 中间表格,要把线都画上,中间空白的容易看错行。最后的年月日,也不要带20xx了。 两处都属本单范围,不另开单。 ### ① 表格格线全画 原来只画外框 + 表头分割线(`hline{1,Z}` + `hline{2}` + `vline{1,Z}`), 数据行之间和列之间全是空白,跨行格(理论课)与单行格的分界也看不出来, 容易看错行。 改为 `hline{1-Z}={0.5pt}` 与 `vline{1-Z}={0.5pt}`,所有格线全画。 **连带必须改列宽**:只画外框时表宽里不含内部竖线;画上 5 条内部竖线后 表宽多出 `5×0.5 = 2.5pt`,编译直接报 `Overfull \hbox (2.47554pt too wide)`。最后一列 30.28mm → 29.40mm 补回。 **连带暴露出一个被掩盖的缺陷**:「理论课」左边跨 2 行,但右边「平时成绩 (作业 20%、点名 10%)」只占 row2 一行、在 26mm 列里折 3 行,自然高 正好 54.73pt —— 于是 row2 被撑到 54.73pt,文字**上下零留白**,末行 「10%)」的墨迹底离行线只剩 0.90pt(0.32mm),而同一张表其他行是 4.97pt(1.75mm)。只画外框时那里本来没有线,缺陷完全被掩盖。 治法:`row{2}={ht=22mm}`。关键是 **`ht` 是最小高度,给了还得比内容高才 起作用** —— 先试 12.5mm(35.4pt < 54.73pt)完全没反应,给到 22mm (62.4pt)才把行撑到 62.86pt,上下各留约 3.8pt,末行墨迹底离行线 4.08pt(1.44mm),与其他行同量级。 另注:`ht` 按表格行号给,抬高 `row{3}`(期末行)只移动中间那条线, 对跨行块高度没有影响。 顺带把「由实验课教师评定」缩为「实验教师评定」(2 行 → 1 行), 省出 11.3pt 给上面那个 3 行格用。 ### ② 签字栏去掉年份 `\hspace*{2\ccwd}20××~年\hspace*{1.2em}月\hspace*{1.2em}日` → `\hspace*{2\ccwd}年\hspace*{1.2em}月\hspace*{1.2em}日` 成绩构成说明是学期末签署的文件,年份由签字人当场手写;模板里预留 `20××` 反而占掉手写空间、并诱导使用者去改占位符。 ### ③ 顺带修掉的真实数据泄漏(3 处) 复查泄漏时发现本单上一版遗留: - `README.md` 第 85 行:引用原件全文时把真实课程名与学年原样贴出 - `README.md` 第 297 行:**「真实数据零泄漏」这一节为了证明零泄漏, 反而把真实课程名、学年、教师姓名原样列了出来** —— 自相矛盾 - `成绩构成说明.tex`:「闭卷笔试」是原件事实,改为 `××考试` 前者改占位符,中间那条删掉关键词清单、改为文字说明, 后者改占位。已复查 10 个关键词全部零命中(`2022` 剩余 3 处为 `U+2022` 码位与 TeX Live 版本号,属误报)。 ### 验收(实测) - 1 页,零 Overfull / Underfull / Missing character - 格线:横线 6 条全宽 + 1 条合计行下方,竖线 7 条按行分段、 跨行格内无中线、合计行跨 6 列无内部竖线(逐条清点确认) - 逐字符交叉校验:表格区内**越列 0 处、越行 0 处** - 末行墨迹底与行线间隙:1.44mm(改前 0.32mm) - 签字栏只剩「年 月 日」,x = 313.84 / 340.23 / 366.63 - 内容底 764.71pt,版心底 769.89pt,余量 5.18pt 不出界 - 真实数据 10 个关键词零命中(含注释与 README)
Author
Owner

已完成并推送(95afc9c)

两处修改都已落地,实测验收通过。

改动

位置 改前 改后
oucgrade.sty 格线 hline{1,Z} + hline{2} + vline{1,Z} hline{1-Z} + vline{1-Z}
oucgrade.sty 列宽 末列 30.28mm 29.40mm(补回 5 条内部竖线的 2.5pt)
oucgrade.sty 行高 row{2-Z}={ht=7.5mm} row{2}={ht=22mm} + row{3-Z}={ht=7.5mm}
oucgrade.sty 签字栏 20××~年 月 日 年 月 日
成绩构成说明.tex 「由实验课教师评定」 「实验教师评定」
成绩构成说明.tex 「闭卷笔试」×2 「××考试」

验收(实测数据)

  • 页数 1,零 Overfull / Underfull / Missing character
  • 格线清点:横线 6 条全宽(顶框 y=225.81、表头底 250.40、行线
    313.26 / 335.02 / 356.78 / 底框 378.54)+ 合计行下方 1 条;
    竖线 7 条按行分段——跨行格(理论课/80%)内无中线、
    合计行跨 6 列无内部竖线,均逐条确认
  • 逐字符交叉校验:表格区内越列 0 处、越行 0 处
  • 末行墨迹底与行线间隙:1.44mm(改前 0.32mm,其他行 1.75mm)
  • 签字栏:只剩「年 月 日」,x = 313.84 / 340.23 / 366.63
  • 不出界:内容底 764.71pt,版心底 769.89pt,余量 5.18pt
  • 可复现:干净克隆重编,文本与线条集合与已提交 PDF 完全一致
    (md5 不同仅 creationDate 时间戳)

真实数据复查

10 个关键词零命中(含注释与 README)。剩余 2022 3 处为
U+2022 码位与 TeX Live 版本号,属误报。

README 同步更新:新增「行高:ht 是最小值,且跨行格不会自己长高」
与「1-Z vs 1,Z」两节,列宽表与签字栏说明按现状修正。

关闭本单。

## 已完成并推送(95afc9c) 两处修改都已落地,实测验收通过。 ### 改动 | 位置 | 改前 | 改后 | | :-- | :-- | :-- | | `oucgrade.sty` 格线 | `hline{1,Z}` + `hline{2}` + `vline{1,Z}` | `hline{1-Z}` + `vline{1-Z}` | | `oucgrade.sty` 列宽 | 末列 30.28mm | 29.40mm(补回 5 条内部竖线的 2.5pt) | | `oucgrade.sty` 行高 | `row{2-Z}={ht=7.5mm}` | `row{2}={ht=22mm}` + `row{3-Z}={ht=7.5mm}` | | `oucgrade.sty` 签字栏 | `20××~年 月 日` | `年 月 日` | | `成绩构成说明.tex` | 「由实验课教师评定」 | 「实验教师评定」 | | `成绩构成说明.tex` | 「闭卷笔试」×2 | 「××考试」 | ### 验收(实测数据) - **页数 1**,零 Overfull / Underfull / Missing character - **格线清点**:横线 6 条全宽(顶框 y=225.81、表头底 250.40、行线 313.26 / 335.02 / 356.78 / 底框 378.54)+ 合计行下方 1 条; 竖线 7 条按行分段——跨行格(理论课/80%)内**无中线**、 合计行跨 6 列**无内部竖线**,均逐条确认 - **逐字符交叉校验**:表格区内越列 0 处、越行 0 处 - **末行墨迹底与行线间隙**:1.44mm(改前 0.32mm,其他行 1.75mm) - **签字栏**:只剩「年 月 日」,x = 313.84 / 340.23 / 366.63 - **不出界**:内容底 764.71pt,版心底 769.89pt,余量 5.18pt - **可复现**:干净克隆重编,文本与线条集合与已提交 PDF 完全一致 (md5 不同仅 `creationDate` 时间戳) ### 真实数据复查 10 个关键词零命中(含注释与 README)。剩余 `2022` 3 处为 `U+2022` 码位与 TeX Live 版本号,属误报。 README 同步更新:新增「行高:ht 是最小值,且跨行格不会自己长高」 与「`1-Z` vs `1,Z`」两节,列宽表与签字栏说明按现状修正。 关闭本单。
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: laoyang/ouc_latex_template#9