签字栏去掉年份占位符,只保留手写填空位「年 月 日」 #8

This commit is contained in:
2026-10-27 08:55:30 +08:00
parent 3b67659689
commit 88b3e088d6
3 changed files with 62 additions and 52 deletions
+13 -17
View File
@@ -36,7 +36,7 @@
\newcommand{\calhour}{00} % 总学时
\newcommand{\calstudent}{000} % 学生人数
\newcommand{\calassess}{××考试} % 考核方式(填 ×××)
\newcommand{\calgrade}{20××} % 签字栏年份
% 注:签字栏的「年 月 日」不设宏 —— 那是**手写**填空位,模板里保持空白。
\begin{document}
@@ -202,30 +202,26 @@
% 「院(系)」x=321.00 年份 x=352.50
% 原件第二行是用空格顶的(不是缩进),照抄即可。
%
% ⚠️ 第二行的三个锚点(实测原件 PDF,10.45pt 宋体):
% ⚠️ 第二行的三个锚点(逐字符实测原件 PDF,10.45pt 宋体):
% 年字形 x = 355.08 月 x = 376.08 日 x = 397.08
% 年→月 空档 10.55pt,月→日 空档 10.50pt(都是一个全角字的宽度)
% 原件里**年份是空的**(" 年 月 日"),留白给老师手写签日期。
% 年→月 21.00pt,月→日 21.00pt(都是一个全角字 + 10.55pt 空档)
%
% 我们填了 \calgrade,所以必须给年份一个**定宽右对齐盒子**:
% 盒右边界 = 年字形起点 355.08
% 盒起点 = 355.08 − 34.16 = 320.92 ← 与上行「院(系)」321.00 对齐
% 盒宽 34.16pt 放得下 "20××"(2 半角 10.5 + 2 全角 21 ⇒ 约 31.5pt)
% 实测落到:年 355.53 月 376.08 日 397.14
% 原件被填过,年份位印着 4 个半角数字(x=331.44~352.50),
% 后面跟一个空格,再是「年」。**本模板不写年份**,那一段留白给
% 老师手写签日期 —— 这是空白模板该有的样子。
%
% ❌ 出错过的写法:`\hspace*{92.604mm}\calgrade~年\hspace{-8.35mm}月`
% —— 年份文字把「年」推到了 x=399.74,直接用负 kern 去拽「月」,
% 结果「月」叠在「年」上,三个字变成一个墨团。
% 负 \hspace 只能挪后面的盒子,不能把已经排出去的「年」收回来。
% 但「年 月 日」三个字仍留在原件的印刷位置上(355.08 起),
% 这样打出来的表格与学校原表逐字对齐,手写填空处一目了然。
%
% ⚠️ 不要用负 \hspace 去挪:它只能压缩后续间距,减到负数就是重叠。
% (曾经为了塞进 \calgrade 占位符,用 \hspace{-8.35mm} 拽「月」,
% 结果三个字叠成一个墨团。现已彻底去掉年份占位符,问题不存在了。)
%======================================================================
\begin{caloutside}
\calskip{5.60mm}
\hspace*{81.49mm}\calfontC 院(系)负责人签字:\par
\calskip{1.10mm}
\hspace*{81.49mm}%
{\calfontC\makebox[34.16pt][r]{\calgrade}年}%
\hspace*{10.60pt}%
\calfontC 月\hspace*{10.60pt}日\par
\hspace*{93.517mm}\calfontC 年\hspace*{10.55pt}月\hspace*{10.55pt}日\par
\end{caloutside}
\end{document}