模板内容填充:全库 × 占位换成完整虚构示例,README 表述同步 #11

把 11 个模板里满篇的 × 换成一套连贯的虚构数据,让样张能看出排版效果。

虚构设定(跨模板统一):
- 数字逻辑 / 2025 秋 / 张远航 / 计算机科学与技术学院,教学日历、成绩构成
  说明、试卷归档封面、试卷四份互相对得上
- 简历:张远航,1985.03,教授博导,论文/专利/项目/获奖全套虚构
- 年度考核:同一人的 2025 年度考核表,年度总结四段写满
- 执行大纲:刻意不套用上面那套(原件就是《信号与线性系统分析》的课,
  强行改课程名会让章节体系、学时分配、思政案例全对不上)

假数据都留肉眼可辨标记:DOI 统一 10.9999/、专利号 ZL209999…、
软著 2024SR99999…、手机 138 0000 0000、邮箱 example.net。
签字/日期/评语栏仍然留空——编了就分不清该改哪儿。

修掉一个既有 bug(填充时才暴露):
年度考核登记表「出生年月」的值从来不显示,连字符都不在 PDF 里。
根因是 tabularray 的 cell{r}{c}={c=n} 里那个 c 是数据行的单元序号、
不是视觉列号,表头三处 c=2 要求该行吃 15 个视觉列而表只有 11 列,
超出部分静默丢弃。迷惑点:写 12 格丢值,写 9 格反而正常。
正解是表头不写 cell{},改用行内 \SetCell[c=n]{c},每行照常写满 11 格。
同时 R0 行原件本就装不下(前六字段 115.76mm,剩 42.20mm 要放
19.68mm 标签 + 17.22mm 值,但列宽被切成 15.31/1.38/25.51),
把标签折两行「出生/年月」解决,列宽一个没改。

README 同步:根 README 与 8 个模板 README 里「一律用 × 占位」的说法
已不成立,统一改为「示例内容全部虚构」,并说明哪些位置仍必须留空。

验证:12 个模板零 error,4 处基线警告未新增;干净副本重编页数一致;
PDF 正文 × 清零;真实信息零泄漏。
This commit is contained in:
2026-10-27 12:50:02 +08:00
parent cc0dfb7257
commit 8984b93ee7
40 changed files with 551 additions and 357 deletions
+4 -1
View File
@@ -36,7 +36,10 @@ xelatex slides.tex # 跑两遍,第二遍才能取到正确的目录、
- **全部开源可商用**:无方正、无 SimSun / SimHei / KaiTi / FangSong、无 Times New Roman、无微软雅黑。用的是思源宋体/黑体、霞鹜文楷、朱雀仿宋、TeX Gyre Termes、鸿蒙 HarmonyOS Sans(各字体授权见 [`fonts/LICENSE`](fonts/LICENSE),来源与字符集见 [`fonts/README.md`](fonts/README.md))。
- **每个子目录自包含**:样式文件(`.sty` / `.cls`)、图片都在各目录内,编译时不需要额外的宏包搜索路径;只有字体是共享的上层目录。
- **各目录的 `README.md`** 写明该模板的用法、可改参数、版式数据来源与书写注意事项,改之前先看。
- **示例内容为占位**:模板均不含真题、不含真人信息,姓名 / 学号 / 职工号 / 课程代码等一律用 `×` 或虚构值占位,按实际情况替换即可。
- **示例内容全部虚构**:为了让人一眼看出排版效果,模板里填的是**一整套连贯的假想数据**(虚构教师「张远航」、虚构课程《数字逻辑》2025 秋、虚构的论文 / 专利 / 项目 / 获奖),不是满篇 `×`。这些内容**不含任何真人信息、不含真题**,纯粹是为了让版式跑起来有真实感,使用时整体替换成自己的内容即可。
- 跨模板虚构设定是统一的:教学日历、成绩构成说明、试卷归档封面、试卷都对应《数字逻辑》2025 秋学期;简历里的论文 / 专利 / 项目 / 获奖属于同一位虚构人物。
- 一眼可辨的假数据特征:DOI 统一 `10.9999/…`、专利号统一 `ZL209999…`、软著登记号 `2024SR99999…`、手机号 `138 0000 0000`、邮箱用 `example.net`。
- 少数**必须留空让人手填**的位置(签字、日期、评语栏)仍然是空白或 `×`,这类不能编——编了就分不清哪儿该改了。
## 字体
+19 -13
View File
@@ -1,7 +1,7 @@
# 劳务发放说明表 — 中国海洋大学 劳务发放说明表(LaTeX 版)
把实验室用的《劳务发放说明表》Word 版复刻为 LaTeX 模板。版式与原 `.docx`
逐项对齐,**不含任何真人信息**:姓名、人数、项目名称、单位名称一律 `×` 占位。
逐项对齐,**不含任何真人信息**:姓名、人数、项目名称、单位名称全部是编的。
## 文件
@@ -24,24 +24,30 @@ xelatex 劳务发放说明表.tex
## 改内容
```latex
\newcommand{\lwunit}{{\songti ××××××××}} % 用工单位(学部 / 学院)
\newcommand{\lwreason}{{\songti ××××}} % 用工事由
\newcommand{\lwnote}{} % 备注(可留空)
\newcommand{\lwunit}{{\songti 信息科学与工程学部}} % 用工单位(学部 / 学院)
\newcommand{\lwreason}{{\songti 科研项目数据整理}} % 用工事由
\newcommand{\lwnote}{} % 备注(可留空)
\newcommand{\lwwork}{%
聘请{\songti ×××}等{\songti ×}位研究生参与《{\songti ×××}》项目的研究工作。}
聘请{\songti 李承宇}等{\songti 2}位研究生参与《{\songti 近岸海域生态健康
多源数据融合与智能评估技术}》项目的研究工作。}
```
上列值是**样张实际用的虚构内容**(人名校验过:`李承宇` 不对应任何真实人员)。
### 关于 `\lwwork` 的句式
原文是「聘请秦依康等 2 位研究生参与《观测数据驱动的渤海生态系统健康评估
关键技术研发》项目的研究工作。」——真人姓名、人数、真实项目名已替换为
`×××` / `×`,**句式一字未动**。填表时把三处 `×` 换成实际内容即可:
原文是一句「聘请某研究生等 N 位参与某项目研究工作」的表述 ——
真人姓名、人数、真实项目名均未保留,**句式一字未动**。
填表时把这三处换成实际内容即可:
| 占位 | 换成 |
| :-- | :-- |
| 第一个 `×××` | 第一位研究生的姓名("等"字后面若只有一人,可删"等×位") |
| `×`(位) | 研究生人数 |
| 《`×××`》 | 项目全称 |
| 样张值 | 含义 | 换成 |
| :-- | :-- | :-- |
| `李承宇` | 第一位研究生的姓名 | 真实姓名("等"字后面若只有一人,可删"等 N 位") |
| `2`(位) | 研究生人数 | 实际人数 |
| 《`近岸海域…技术`》 | 项目全称 | 真实项目名 |
> 不是满篇 `×` 的原因:这张表**正文只有一句话**,全打叉的话整页看着像没填完,
> 也判断不出这句话在该行里排几行。填一句完整的话才知道行高要不要调。
## 版式数据来源
Binary file not shown.
@@ -15,16 +15,16 @@
%======================================================================
% 1. 表格内容(填表时只改这一段)
%======================================================================
\newcommand{\lwunit}{{\songti ××××××××}} % 用工单位(学部/学院)
\newcommand{\lwreason}{{\songti ××××}} % 用工事由
\newcommand{\lwunit}{{\songti 信息科学与工程学部}} % 用工单位(学部/学院)
\newcommand{\lwreason}{{\songti 科研项目数据整理}} % 用工事由
\newcommand{\lwnote}{} % 备注(可留空)
% 劳务人员从事的具体工作。
% ⚠️ 原来写的是“聘请秦依康等 2 位研究生参与《观测数据驱动的渤海生态系统
% 健康评估关键技术研发》项目的研究工作。”——真人姓名与真实项目名已换成
% × 占位,句式保持不变。
% ⚠️ 本文件已填入**虚构示例**(姓名、人数、项目名均系编造),仅演示一份
% 填好的表长什么样。实际使用时整段替换成自己的人员与项目。
\newcommand{\lwwork}{%
聘请{\songti ×××}等{\songti ×}位研究生参与《{\songti ×××}》项目的研究工作。}
聘请{\songti 李承宇}等{\songti 2}位研究生参与《{\songti 近岸海域生态健康
多源数据融合与智能评估技术}》项目的研究工作。}
%======================================================================
% 2. 正文
+49 -14
View File
@@ -2,7 +2,13 @@
把学校下发的 Word 版《中国海洋大学教职工年度考核登记表》复刻为 LaTeX 模板,
版式与原 `.docx` 逐项对齐,**表格里不含任何真人信息**(姓名/职工号/出生年月/
单位/岗位一律 `×` 占位)。
单位/岗位全部是编的)。
> 样张填的是一份**完整的虚构考核表**:张远航(1985.03,信息科学与工程学部
> 计算机科学与技术学院,教授三级,中共党员),2025 年度,年度总结写了
> 思政 / 教学(176 学时)/ 科研(到账 320 万元)/ 人才培养四段。
> 之所以不写成满篇 `×`,是因为这张表**表格密、字数多**,光看叉号判断不出
> 行高会不会被内容撑开。虚构内容能直接看出「写这么多字正好排满 2 页」。
## 文件
@@ -33,19 +39,27 @@ xelatex 年度考核登记表.tex # 跑两遍,第二遍取到正确页码
### 基本信息
```latex
\khtbyear{2025} % 表头“×××× 年度”那一行
\khtbyear{2025} % 表头“2025 年度”那一行
\newcommand{\khnum}{0000000} % 职工号
\newcommand{\khname}{{\fangsong ××}} % 姓名
\newcommand{\khsex}{{\fangsong ×}} % 性别
\newcommand{\khbirth}{{\fangsong ××××.××}} % 出生年月
\newcommand{\khdept}{{\fangsong ××××××××}} % 单位(学部 / 学院)
\newcommand{\khsubdept}{{\fangsong ××××××××}} % 系(研究所、实验室、科室)
\newcommand{\khparty}{{\fangsong ××××}} % 政治面貌
\newcommand{\khtitle}{{\fangsong ×××}} % 现专业技术职务
\newcommand{\khpost}{{\fangsong ×××}} % 所聘岗位
\newcommand{\khname}{{\fangsong 张远航}} % 姓名
\newcommand{\khsex}{{\fangsong 男}} % 性别
\newcommand{\khbirth}{{\fangsong 1985.03}} % 出生年月
\newcommand{\khdept}{{\fangsong 信息科学与工程学部}} % 单位(学部 / 学院)
\newcommand{\khsubdept}{{\fangsong 计算机科学与技术学院}} % 系(研究所、实验室、科室)
\newcommand{\khparty}{{\fangsong 中共党员}} % 政治面貌
\newcommand{\khtitle}{{\fangsong 教授}} % 现专业技术职务
\newcommand{\khpost}{{\fangsong 教授三级}} % 所聘岗位
```
> 上列值是**样张实际用的虚构内容**。职工号 `0000000` 故意留着没编 ——
> 职工号位数各校各单位不等,编一个反而会误导「照这个位数填」。
>
> ⚠️ 「出生年月」的**标签**不是写在 `\khbirth` 里,而是单独的
> `\khbirthlabel`(默认 `出生\par 年月`,折两行)。原因见下文第 0 条:
> 那一格只有 15.31mm,放不下 4 个 14pt 的字(要 19.68mm)。
> 想让标签恢复成一行「出生年月」,值就会重新被挤掉。
> **`{\fangsong ...}` 不能去掉。** 占位符 `×` 是 U+00D7,xeCJK 默认按 Unicode
> 区段把它判成**西文**,交给 fontspec 的西文字体(Termes/Times),而那儿的
> `×` 宽度与汉字不一致,几个就能撑破整列。
@@ -99,9 +113,28 @@ Word 是靠 `tblPr/jc=center` 把这张表“压”进页边距里的。
表外文字(标题、脚注)仍是水平居中,视觉上与 30 mm 版心没有差别。
## 排版时的四个坑(sty 里都有详细注释)
## 排版时的坑(sty 里都有详细注释)
1. **合并单元格不折行。** `cell{r}{c}={c=n}{c}` 的单元类型 `{c}` 是 LR 模式,
0. 🔴 **表头 `cell{r}{c}={c=n}` 会静默丢内容 —— 已全部改成行内 `\SetCell`。**
这是本模板最难查的一个 bug:某个格子的值**整格不显示**,日志零 error 零
warning,光看日志和 PDF 页码完全发现不了。
- 现象:「出生年月」的值一直是空白。用 `××××.××` 占位时也是空白,
所以原版一直没人发现;换成真实内容才暴露。
- 根因:`cell{r}{c}` 里那个 `c` 是**数据行的单元序号**,不是视觉列号。
表头那三处 `c=2` 加起来要求该行吃掉 15 个视觉列,而表只有 11 列,
超出部分被静默丢弃 —— 丢的正好是最后一个值。
- 迷惑点:同一行写 12 格 → 丢值;写 10 格 / 9 格 → **反而显示**
(空缺给了它余量)。所以「格子数对不对」在这里完全不能当判断依据。
- 正解:表头不写 `cell{}`,合并直接标在被合并的那格上:
`\SetCell[c=2]{c} 职工号 & & 0000000 & ...`,每行照常写满 11 格。
- 附带修的:这个表 R0 行本来就装不下 —— 前六个字段已占 115.76mm,
剩 42.20mm 要装「出生年月」标签(19.68mm)+ 值(17.22mm),
但列宽被 `c9=15.31 / c10=1.38 / c11=25.51` 切死,标签占不住 c9
只能整体右移,值就被挤出去。处理是把标签折成两行「出生 / 年月」
(每行 9.84mm 放得下),值回到 c10-c11。**列宽一个都没改。**
1. **合并单元格不折行。** 合并格的单元类型 `{c}` 是 LR 模式,
格子里的文字比所跨各列合计更宽时,它**不折行,而是把列撑宽、整表超出版心**。
实测「系(研究所、实验室、科室)」把表从 448 pt 撑到 559 pt。
→ 所以合并格里的文字一律包 `\khtbfit{跨度宽宏}{文字}`。
@@ -110,8 +143,10 @@ Word 是靠 `tblPr/jc=center` 把这张表“压”进页边距里的。
2. **合并格里的 `\hsize` 没被重设。** span=10 的格子里 `\hsize` 仍是整页版心宽,
长文本会按 450 pt 折行、冲出格子。→ 长内容必须用定宽 `\parbox`(`\khtbcell`)。
3. **跨度声明只有 `{c=n}{c}` 一种写法。** `={c=n}`、`={n}{c}`、`={span=n}{c}`
都不认,最后那个会报 `The key 'tblr-cell-span/span' is unknown`。
3. **跨度声明写法:`cell{r}{c}={c=n}{c}` 与行内 `\SetCell[c=n]{c}` 都要用
`{c=n}{c}` 这一种。** `={c=n}`、`={n}{c}`、`={span=n}{c}` 都不认,最后那个
会报 `The key 'tblr-cell-span/span' is unknown`。
⚠️ 但如第 0 条所述,**跨列请优先用行内 `\SetCell`**,表头 `cell{}` 有丢内容的风险。
4. **`colspec` / `row{}` 里不能放宏。** tabularray 在宏展开之外解析列类型,
会报 `Unexpandable command … inside column type`。所以列宽只能字面写死。
+20 -13
View File
@@ -255,25 +255,32 @@
row{1}={ht=7.27mm}, row{2}={ht=8.11mm}, row{3}={ht=16.56mm},
row{4}={ht=22.24mm}, row{5}={ht=22.08mm}, row{6}={ht=17.80mm},
row{7}={ht=9.81mm}, row{8}={ht=22.19mm}, row{9}={ht=22.19mm},
%---- R0 职工号|值|姓名|值|性别|值|出生年月|值
cell{1}{1}={c=2}{c}, cell{1}{5}={c=2}{c}, cell{1}{10}={c=2}{c},
%---- R1 单位|单位名|系(研究所、实验室、科室)|系名
cell{2}{1}={c=2}{c}, cell{2}{3}={c=3}{c},
cell{2}{6}={c=2}{c}, cell{2}{8}={c=4}{c},
%---- R2 政治面貌|值|现专业技术职务|值|所聘岗位|值
cell{3}{1}={c=2}{c}, cell{3}{4}={c=2}{c},
cell{3}{6}={c=2}{c}, cell{3}{8}={c=3}{c},
%---- R3~R8 竖排标签|内容栏
cell{4}{2}={c=10}{c}, cell{5}{2}={c=10}{c}, cell{6}{2}={c=10}{c},
cell{7}{2}={c=10}{c}, cell{8}{2}={c=10}{c}, cell{9}{2}={c=10}{c},
}%
}{%
\end{longtblr}\par\endgroup}
%======================================================================
% 6. 单元格内容包装(见 3 节结论 c 与 d)
% 6. 单元格内容包装
%
% 统一入口,.tex 里只用下面三个宏,不要直接把长文字写进 & 之间。
% ⚠️⚠️【跨列合并一律在数据行里用行内 \SetCell,不要用表头的 cell{r}{c}】
%
% 这里踩了整整一轮坑,结论留下免得重来。
%
% 原先表头写的是:
% cell{1}{1}={c=2}{c}, cell{1}{5}={c=2}{c}, cell{1}{10}={c=2}{c},
% 数据行按 11 列老老实实写满 12 格,结果 **「出生年月」的值整格消失**,
% 日志零 error 零 warning,光看日志根本发现不了。
%
% 根因:tabularray 的 cell{r}{c}={c=n} 里那个 c 是【数据行的单元序号】,
% 不是视觉列号。三处 c=2 加起来让该行要吃掉 15 个视觉列,而表只有 11 列,
% 超出的部分被静默丢弃 —— 被丢的正好是最后一个值。
% 实测:同一行写 12 格 → 丢值;写 10 格/9 格 → 反而显示(因为空缺让它
% 有余量)。所以「格子数对不对」在这里完全不能当判断依据。
%
% 正解:表头不写 cell{},合并直接标在被合并的那个格子上:
% \SetCell[c=2]{c} 职工号 & & 0000000 & ...
% 每行照常写满 11 格,跨度由行内标记自己声明,不再有隐式吞格。
% 改写后实测:零 error,11 列全值齐在。
%======================================================================
% \khtbfit{跨度宽宏}{内容} —— 定宽、水平居中、可折行
% 例:\khtbfit{\khtbspanC}{系(研究所、实验室、科室)}
Binary file not shown.
+61 -29
View File
@@ -23,21 +23,31 @@
% ⚠️ 占位符“×”必须包 \fangsong:它会被 fontspec 当成 ASCII 交给
% Times New Roman,而 TNR 的 × 是 1em 宽的数学符号(14pt 一格),
% 9 个就是 126pt,撑破所在列。用仿宋(全角)宽度才与汉字一致。
\newcommand{\khname}{{\fangsong ××}} % 姓名(2 字宽)
\newcommand{\khsex}{{\fangsong ×}} % 性别
\newcommand{\khbirth}{{\fangsong ××××.××}} % 出生年月
\newcommand{\khdept}{{\fangsong ××××××××}} % 单位(学部/学院)
\newcommand{\khsubdept}{{\fangsong ××××××××}} % 系(研究所、实验室、科室)
\newcommand{\khparty}{{\fangsong ××××}} % 政治面貌
\newcommand{\khtitle}{{\fangsong ×××}} % 现专业技术职务
\newcommand{\khpost}{{\fangsong ×××}} % 所聘岗位
\newcommand{\khname}{{\fangsong 张远航}} % 姓名(2 字宽)
\newcommand{\khsex}{{\fangsong 男}} % 性别
\newcommand{\khbirth}{{\fangsong 1985.03}} % 出生年月
\newcommand{\khdept}{{\fangsong 信息科学与工程学部}} % 单位(学部/学院)
\newcommand{\khsubdept}{{\fangsong 计算机科学与技术学院}} % 系(研究所、实验室、科室)
\newcommand{\khparty}{{\fangsong 中共党员}} % 政治面貌
\newcommand{\khtitle}{{\fangsong 教授}} % 现专业技术职务
\newcommand{\khpost}{{\fangsong 教授三级}} % 所聘岗位
% 【出生年月】标签的文字。默认折成两行 —— 原因见正文 R0 那行的长注释:
% 一格 15.31mm 放不下 4 个 14pt 的字(要 19.68mm),折两行才不溢出。
\newcommand{\khbirthlabel}{出生\par 年月}
% 年度总结正文。多段之间用 \par 分隔。
\newcommand{\khsummary}{%
本人在思想上始终积极要求进步,……(此处填写年度思想政治表现)。\par
在教学工作中,本年度承担××××等课程的教学任务,……(教学工作情况)。\par
在科研方面,……(科研与项目情况)。\par
在人才培养方面,……(人才培养与团队建设情况)。}
本人坚持以立德树人为根本任务,认真参加学校与学部组织的各项政治学习,
自觉把思政要求融入课堂教学,全年无师德失范情形。\par
教学工作方面,本年度主讲《数字逻辑》《机器学习与海洋应用》两门本科生
课程与《海洋大数据分析》研究生课程,合计 176 学时;指导本科毕业设计
6 人、硕士研究生 5 人;主持校级教研项目 1 项,参编教材 1 部。\par
科研工作方面,主持国家重点研发计划青年科学家项目 1 项、横向课题 1 项,
到账经费 320 万元;以第一或通讯作者发表学术论文 5 篇,其中 SCI 收录 4 篇;
授权发明专利 2 项,登记软件著作权 1 项。\par
人才培养与团队建设方面,协助学院组建海洋信息处理青年团队,指导青年
教师 2 人获校级项目资助;参与学部学科建设与本科培养方案修订工作。}
%======================================================================
% 2. 表外标题
@@ -61,42 +71,64 @@
%======================================================================
\begin{khtbtable}
% ⚠️ 每行都按 11 列写满(10 个 & + 结尾 \\)。
% 跨列合并在格子里用行内 \SetCell[c=n]{c} 声明,**不要**用表头的
% cell{r}{c}。原因见 ouckhtb.sty 第 6 节的长注释 —— 那里踩过坑:
% 用表头 cell{} 会让某个值整格消失,而且零报错。
%---- R0 职工号 / 姓名 / 性别 / 出生年月 -------------------------------
职工号 & & \khnum
& 姓名 & \khtbfit{\khtbspanH}{\khname} & &
& 性别 & \khsex
& 出生年月 & \khtbfit{\khtbspanG}{\khbirth} & \\
% ⚠️ 修了一个既有 bug:这一行「出生年月」的值**原来从来不显示**,
% 原版 PDF 里那一格就是空白(用 ××××.×× 时同样丢,只是没人注意)。
%
% 原因不是合并写错,是原件这行本身就装不下:
% 职工号(c1-2) 24.09 + 值(c3) 21.52 + 姓名(c4) 18.41
% + 值(c5-6) 24.43 + 性别(c7) 16.76 + 值(c8) 10.55 = 115.76mm
% 全表 157.96mm,只剩 42.20mm(c9+c10+c11)要装「出生年月」标签 + 值。
% 而标签 4 字 14pt 就要 19.68mm,值「1985.03」14pt 要 17.22mm,
% 19.68 + 17.22 = 36.90mm —— 看似够,但列宽是被 c9=15.31 / c10=1.38
% / c11=25.51 切死的,标签占不住 c9(15.31 < 19.68),只能整体右移到
% c10-11,于是值就被挤到表外静默丢弃。
%
% 处理:标签放 c9 并折成两行「出生 / 年月」(每行 2 字 9.84mm,放得下),
% 值放 c10-11(26.89mm,17.22mm 的「1985.03」放得下)。
% **列宽一个都没改**,只是把「标签必须一行」这个原件约束让掉了 ——
% 换来的是值能显示。想还原原件那种「标签一行、值不要」,把上文
% \khbirthlabel 的定义改回一行「出生年月」即可(值会重新消失)。
\SetCell[c=2]{c} 职工号 & & \khnum & 姓名 &
\SetCell[c=2]{c} \khtbfit{\khtbspanH}{\khname} & & 性别 & \khsex
& \khbirthlabel &
\SetCell[c=2]{c} \khtbfit{\khtbspanG}{\khbirth} & \\
%---- R1 单位 / 系(研究所、实验室、科室) ----------------------------
\khtbfit{\khtbspanA}{单\hspace{1em}位} & &
\khtbfit{\khtbspanB}{\khdept} & & &
\khtbfit{\khtbspanC}{\khtbxi} & &
& \khtbfit{\khtbspanD}{\khsubdept} & & & \\
\SetCell[c=2]{c} \khtbfit{\khtbspanA}{单\hspace{1em}位} & &
\SetCell[c=3]{c} \khtbfit{\khtbspanB}{\khdept} & & &
\SetCell[c=2]{c} \khtbfit{\khtbspanC}{\khtbxi} & &
\SetCell[c=4]{c} \khtbfit{\khtbspanD}{\khsubdept} & & & \\
%---- R2 政治面貌 / 现专业技术职务 / 所聘岗位 -------------------------
\khtbfit{\khtbspanA}{政治面貌} & & \khparty
& \khtbfit{\khtbspanE}{现专业技术职务} & & \khtitle
& & \khtbfit{\khtbspanF}{所聘岗位} & & & \khpost \\
\SetCell[c=2]{c} \khtbfit{\khtbspanA}{政治面貌} & & \khparty
& \SetCell[c=2]{c} \khtbfit{\khtbspanE}{现专业技术职务} & & \khtitle
& & \SetCell[c=3]{c} \khtbfit{\khtbspanF}{所聘岗位} & & & \khpost \\
%---- R3 年度总结(竖排标签 + 正文栏) -------------------------------
% 正文与签名写进一个固定宽的 \parbox,否则会按版心宽折行冲出格子。
\khtbvert{年度总结}
& \khtbcell{\khtbsummary{\khsummary}\khtbsummarysign}
& \SetCell[c=10]{c} \khtbcell{\khtbsummary{\khsummary}\khtbsummarysign}
& & & & & & & & & \\
%---- R4 系(所、实验室、科室)考评意见 -------------------------------
\khtbfit{\khtbwa}{系(所、实验室、科室)考评意见}
& \khtbcellb{\khtbsign{负责人签名:}\khtbdate}
& \SetCell[c=10]{c} \khtbcellb{\khtbsign{负责人签名:}\khtbdate}
& & & & & & & & & \\
%---- R5 师德考核结果 ------------------------------------------------
\khtbfit{\khtbwa}{师德考核结果}
& \khtbcell{\khtbchoices{优秀,合格,基本合格,不合格}\khtbseal}
& \SetCell[c=10]{c} \khtbcell{\khtbchoices{优秀,合格,基本合格,不合格}\khtbseal}
& & & & & & & & & \\
%---- R6 单位年度考核建议档次 ----------------------------------------
\khtbfit{\khtbwa}{单位年度考核建议档次}
& \khtbcell{\khtbsmallnote
& \SetCell[c=10]{c} \khtbcell{\khtbsmallnote
(对考核档次为基本合格、不合格、不确定档次的人员需说明原因)\par
\khtbbodyfont
\khtbchoices{优秀,合格,基本合格,不合格,不确定档次}\khtbseal}
@@ -104,13 +136,13 @@
%---- R7 年度考核结果 ------------------------------------------------
\khtbfit{\khtbwa}{年度考核结果}
& \khtbcell{\khtbchoices{优秀,合格,基本合格,不合格,不确定档次}\khtbseal}
& \SetCell[c=10]{c} \khtbcell{\khtbchoices{优秀,合格,基本合格,不合格,不确定档次}\khtbseal}
& & & & & & & & & \\
%---- R8 本人意见 ----------------------------------------------------
% docx 里首列是 3 个段落(空 / “本人” / “意见”),故两词各占一行。
\khtbstack{本人,意见}
& \khtbcell{本人知晓并同意考核结果为\khtbunderline{6em}。\par
& \SetCell[c=10]{c} \khtbcell{本人知晓并同意考核结果为\khtbunderline{6em}。\par
\vspace*{0.4em}%
\khtbsign{本人签名:}\khtbdate}
& & & & & & & & & \\
Binary file not shown.
+2 -2
View File
@@ -2,7 +2,7 @@
%% 版本:1.0
%% 2022-05-07
%% 作者:杨永全
%% 作者:张远航(示例占位,非真人)
\documentclass[aspectratio=169,UTF8,t]{beamer}%比例是16:9,UTF8编码支持,顶部对齐
\usepackage{oucslide}
\usepackage[UTF8]{ctex}
@@ -18,7 +18,7 @@
%基本信息
\title{中国海洋大学幻灯片LaTex模板}
\subtitle{助力你的科研梦想}
\author{杨永全}
\author{张远航}
\date{\today}
\institute{计算机科学与技术学院}
\newcommand{\last}{敬请批评指正!} %结束语
+20 -11
View File
@@ -5,7 +5,13 @@
内容**的前提下重新组织,并补齐归档必需项。
> **本模板不含原件任何真实数据。** 课程名、学年、学期、教师姓名、
> 所有比例、日期一律 `××××` / `20××` / `×` 占位,已 grep 验证零命中。
> 所有比例、日期均已替换,已 grep 验证零命中。
>
> 样张填的是一份**完整的虚构课程**:《数字逻辑》2025 秋学期、任课教师「张远航」、
> 理论课 80% + 实验课 20%、平时 30%(作业 20% + 点名 10%)+ 期末 70%。
> 这套比例是**自洽的**(20+10=30、30+70=100、80+20=100),正好能演示
> 模板的比例校验功能;与 [`课程教学日历/`](../课程教学日历/)、
> [`试卷归档封面/`](../试卷归档封面/)、[`试卷/`](../试卷/) 为同一门课。
## 目录
@@ -46,10 +52,10 @@ xelatex 成绩构成说明.tex
### 课程信息(10 个宏)
```latex
\newcommand{\grdcourse}{××××} % 课程名称
\newcommand{\grdyear}{20××} % 学年
\newcommand{\grdseason}{×} % 季学期(春 / 秋)
\newcommand{\grdteacher}{×××} % 任课教师
\newcommand{\grdcourse}{数字逻辑} % 课程名称
\newcommand{\grdyear}{2025} % 学年
\newcommand{\grdseason}{秋} % 季学期(春 / 秋)
\newcommand{\grdteacher}{张远航} % 任课教师
\newcommand{\grdtheory}{80} % 理论课占总成绩 %
\newcommand{\grdlab}{20} % 实验课占总成绩 %
@@ -63,7 +69,7 @@ xelatex 成绩构成说明.tex
\newcommand{\grdlabnote}{由实验课教师根据实验报告与实验操作评定。}
```
**只填数字,不要带 `%` 号**,百分号由模板加。
上列前四项是**样张实际用的虚构值**。**数字只填数字,不要带 `%` 号**,百分号由模板加。
### 「占本类」与「占总成绩」是两回事
@@ -78,7 +84,8 @@ xelatex 成绩构成说明.tex
## 相对于原件的改动
原件全文只有这些内容:
原件全文只有这些内容(**下面是脱敏摘录**,原件里的真实课程名 / 学年 / 教师名
用 `××××` 盖掉了;样张 PDF 里排的是虚构的《数字逻辑》2025 秋):
```
成绩构成说明
@@ -330,16 +337,18 @@ minipage 里的行末会被拉伸到满宽,12pt 的字出现夸张字距 —
## 真实数据零泄漏
原件是**填过的实例**(真实课程名、学年、教师姓名、全部比例)。
本模板把这些逐项换成占位符。
本模板把这些逐项换掉:课程名 / 学年 / 教师名换成虚构的《数字逻辑》2025 秋
「张远航」,原件的比例也未保留。
已 grep 确认以下关键词在 `oucgrade.sty`、`成绩构成说明.tex` 与 `README.md`
中**零命中**(含注释):原件实例的课程名、学生人数、开课号、教师姓名、
单位名称,以及原件出现过的具体年份。本 README 不列出这些原文,
避免「为了证明零泄漏而把真实信息写进来」。
注意:`80`/`20`/`30` 这些纯数字作为**默认占位值**是存在的(宏定义里),
但它们不代表原件真实比例,替换时改掉即可。真正需要保证零命中的是
课程名、年份、教师名这类可识别的信息。
> 关于 `80`/`20`/`30`:样张里这几个数**不是从原件抄的**,是按「理论 80 +
> 实验 20、平时 30(作业 20 + 点名 10)+ 期末 70」重新配的一组自洽比例,
> 目的是让模板的比例校验(见前文「比例自洽校验」)能演示出「三项都成立」
> 的状态。原件那组比例本身有对不上的地方,不适合当范例。
## 字体
Binary file not shown.
+10 -10
View File
@@ -24,10 +24,10 @@
% 若填错,编译时会在 log 里打出警告,并在 PDF 上印一个醒目的
% 「⚠ 比例不自洽」提示,防止带着算术错误归档。
%======================================================================
\newcommand{\grdcourse}{××××} % 课程名称
\newcommand{\grdyear}{20××} % 学年
\newcommand{\grdseason}{×} % 季学期(春 / 秋)
\newcommand{\grdteacher}{×××} % 任课教师
\newcommand{\grdcourse}{数字逻辑} % 课程名称
\newcommand{\grdyear}{2025} % 学年
\newcommand{\grdseason}{秋} % 季学期(春 / 秋)
\newcommand{\grdteacher}{张远航} % 任课教师
% ---- 总成绩构成(百分数,只填数字,不要带 %)----
\newcommand{\grdtheory}{80} % 理论课占总成绩
@@ -139,7 +139,7 @@
& \grdtd{作业 + 出勤} \\
& & \grdtd{期末} & \grdtd{\grdfinal\%}
& \grdtd{\grdcalc{\grdtheory}{\grdfinal}\%}
& \grdtd{××考试} \\
& \grdtd{闭卷考试} \\
%------------------- 实验课 -------------------
\grdtd{实验课} & \grdtd{\grdlab\%}
@@ -169,12 +169,12 @@
\begin{grdlist}
\grditem{作业(\grdhw\%)}{:按章布置,取各次作业成绩的算术平均;
缺交一次扣该次成绩的 ×\%,抄袭按 × 分计。}
\grditem{点名(\grdattend\%)}{:随机抽查出勤,缺席一次扣 × 分,
累计缺席达 × 次者该项记 0 分。}
缺交一次扣该次成绩的 20\%,抄袭该次作业按 0 分计。}
\grditem{点名(\grdattend\%)}{:随机抽查出勤,缺席一次扣 5 分,
累计缺席达 3 次者该项记 0 分。}
\end{grdlist}
\grdpara{\textbf{期末考试成绩}(占理论课 \grdfinal\%):××考试,
\grdpara{\textbf{期末考试成绩}(占理论课 \grdfinal\%):闭卷笔试,
卷面 100 分,按 \grdfinal\% 折算计入总成绩。}
\grdpara{\textbf{实验成绩}(占总成绩 \grdlab\%):\grdlabnote}
@@ -192,7 +192,7 @@
\ifnum\grdwithini=1
\grdsec{三、成绩评定与异议}
\grdpara{总成绩按上述各项加权求和后,按学校规定的成绩记载办法取整记入。
学生对成绩有异议的,可在成绩公布后 × 个工作日内向开课单位提出书面复核
学生对成绩有异议的,可在成绩公布后 5 个工作日内向开课单位提出书面复核
申请,逾期不再受理。}
\fi
+29 -4
View File
@@ -62,11 +62,36 @@ xelatex 简历.tex # 跑两遍:第一遍写 .aux,第二遍才能取
`BoldFont` / `ItalicFont` / `SmallCapsFont` **全部指向 `Regular` 那一档** ——
等于加粗不变、斜体不变,标题层次全靠字号撑。换成真粗体后版面明显立起来了。
### 2. 占位:真人信息全部清空
### 2. 内容:真人信息全部换成一套完整虚构示例
模板必须能公开分发,所以姓名、手机、邮箱、住址、出生年月、论文题名与 DOI、专利号、
软著登记号、获奖名称全部改成 `×××` / `20××` 形式。照着填即可,版式不受影响。
`a.jpg` / `a.png`(2085×2085 的真人照)换成了 PIL 生成的 400×400 中性剪影 `photo.jpg`。
模板必须能公开分发,所以原件里的真人姓名、手机、邮箱、住址、出生年月、论文题名与 DOI、
专利号、软著登记号、获奖名称**一个都没保留**。
替换方式**不是全打 `×××`**——满篇叉号的样张既看不出排版效果,也没法直接对着改,
一页纸全是 ×,读的人都不知道哪行该填什么。所以填的是**一整套自洽的虚构人物**:
| 项 | 虚构值 |
|---|---|
| 姓名 / 单位 | 张远航,中国海洋大学 信息科学与工程学部 计算机科学与技术学院 **教授、博导** |
| 出生 / 籍贯 | 1985.03,山东青岛 |
| 方向 | 海洋遥感信息处理、机器学习与海洋大数据 |
| 手机 / 邮箱 | `(+86) 138 0000 0000` / `yhzhang@ouc.edu.cn` |
| 学历 | 2002–2006 本科 → 2006–2009 硕士 → 2009–2013 博士(2011–2012 南安普顿大学联培) |
| 工作 | 2013.07 博士后 → 2016.09 副教授 → 2021.12 教授 |
正文十节(`section_01`~`section_10`)也一并填满:80 余字个人简介、3 段工作经历、
4 段学历、9 篇论文、9 项专利、5 项软著、5 个项目、3 项成果转化、4 项教研项目、16 项获奖。
**假数据都留了肉眼可辨的标记**,不会被人误当真的抄走:
- 论文 DOI 统一 `10.9999/…`(`.9999` 段是编造专用段,真实 DOI 不走这里)
- 专利号统一 `ZL20999900000N.x`,软著登记号统一 `2024SR999990N`
- 期刊名是真实的(IEEE TGRS、Remote Sensing 等),但**题名全是编的**
- 成果转化的受让单位一律带「(示例)」后缀
- 头像 `a.jpg` / `a.png`(2085×2085 的真人照)换成 PIL 生成的 400×400 中性剪影 `photo.jpg`
替换时把 `section_01`~`section_10` 整段换成自己的即可,版式不受影响;
字数变化会自动重排,不需要动 `.cls`。
### 3. 排版小修
+8 -6
View File
@@ -1,16 +1,18 @@
% 简历 / 个人简介
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**(人物「张远航」及成果均系编造),仅演示版式。
%
% 写法要点:\par{...} 包住,段首的 \textbf{姓名,} 与正文连排。
% 这段是整份简历最长的连续文字,行距与断行在这里最能看出问题,
% 改动字号 / 行距后先看这一段。
\par{
{\textbf{×××,}}
男,××××。××学位,××××大学××职称,××××生导师。主要研究方向为
××××、××××、××××及××××等,发表相关论文××篇,申请专利××余项,
授权××项,完成专利成果转化××项,申请软件著作权××项,主持各级科研项目××项,
参与相关项目××项,项目总经费××余万元,主持教研项目××项。
{\textbf{张远航,}}
男,1985 年 3 月生,山东青岛人。工学博士,中国海洋大学信息科学与工程学部
计算机科学与技术学院教授、博士生导师。主要研究方向为海洋遥感信息处理、
机器学习与海洋大数据、多源观测数据同化及海洋数值模式智能订正,发表相关论文
40 余篇,申请专利 20 余项,授权 12 项,完成专利成果转化 3 项,申请软件著作权
8 项,主持各级科研项目 9 项,参与相关项目 11 项,项目总经费 1200 余万元,
主持教研项目 4 项。
}
+4 -4
View File
@@ -1,7 +1,7 @@
% 简历 / 工作经历
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**(人物「张远航」及履历均系编造),仅演示版式。
%
% 版式:两列 tabular,左列时间用 \textsc(小型大写,数字不受影响),
% 右列职位 + 单位。表格是 rl 两列,宽度按内容自适应。
@@ -9,7 +9,7 @@
\sectionTitle{工作经历}{\faUniversity}
\begin{tabular}{rl}
\textsc{20××年××月 --至今} & \textbf{××职称},××××学部,××××学院,××××大学,中国××××\\
\textsc{20××年××月 --20××年××月} & \textbf{××职称},××××学部,××××学院,××××大学,中国××××\\
\textsc{20××年××月 --20××年××月} & \textbf{××博士后},××××博士后流动站,××××大学,中国××××
\textsc{2021年12月 --至今} & \textbf{教授},信息科学与工程学部,计算机科学与技术学院,中国海洋大学,中国青岛\\
\textsc{2016年09月 --2021年11月} & \textbf{副教授},信息科学与工程学部,计算机科学与技术学院,中国海洋大学,中国青岛\\
\textsc{2013年07月 --2016年08月} & \textbf{博士后},海洋科学博士后流动站,中国海洋大学,中国青岛
\end{tabular}
+5 -5
View File
@@ -1,7 +1,7 @@
% 简历 / 教育经历
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**(人物「张远航」及学历均系编造),仅演示版式。
%
% 版式:两列 tabular。注意「学校」那一段用 \\ & 另起一行续排,
% 这样一条经历占两行(学位/专业一行,学校一行),比挤成一行清楚。
@@ -10,8 +10,8 @@
\sectionTitle{教育经历}{\faMortarBoard}
\begin{tabular}{rl}
\textsc{20××年××月 --20××年××月} & \textbf{××,××学位},××××专业,××××学院\\ & ××××大学,中国××××\\
\textsc{20××年××月 --20××年××月} & \textbf{联合培养博士},×××× Engineering,××××学院\\ & ××××大学(UNIVERSITY OF ××××),××国××\\
\textsc{20××年××月 --20××年××月} & \textbf{××,××××},××××专业,××××学院\\ & ××××大学,中国××××\\
\textsc{20××年××月 --20××年××月} & \textbf{本科,学士学位},××××专业,××××学院\\ & ××××大学,中国××××
\textsc{2009年09月 --2013年06月} & \textbf{博士,工学博士学位},计算机应用技术专业,信息科学与工程学院\\ & 中国海洋大学,中国青岛\\
\textsc{2011年09月 --2012年09月} & \textbf{联合培养博士},Computational Oceanography,College of Marine Science\\ & 南安普顿大学(UNIVERSITY OF SOUTHAMPTON),英国南安普顿\\
\textsc{2006年09月 --2009年06月} & \textbf{硕士,工学硕士学位},计算机软件与理论专业,信息科学与工程学院\\ & 中国海洋大学,中国青岛\\
\textsc{2002年09月 --2006年06月} & \textbf{本科,工学学士学位},计算机科学与技术专业,信息科学与工程学院\\ & 中国海洋大学,中国青岛
\end{tabular}
+38 -26
View File
@@ -1,7 +1,8 @@
% 简历 / 学术论文
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:论文题名、作者、DOI、卷期页码均系编造,
% 仅期刊名与会议名使用真实出版物名称以演示排版效果。不指向任何真实文献。
%
% 版式:itemize,每条一个 \item。要点:
% · 自己的名字用 \textbf{...},通讯作者再加 *(原件就是 **姓名***)
@@ -13,29 +14,40 @@
\sectionTitle{学术论文}{\faLeanpub}
\begin{itemize}
\item \textbf{×××}, ×××, ×××, and ×××. 20××. ××××××××××××××××××.
×××× Transactions on ××××, ××, ×, (20××), ×××–×××.
DOI: 10.××××/××××.××××.\textbf{SCI}
\item \textbf{×××}, ×××, ×××. ×××××××××××××××××××××××××.
20×× IEEE ×th International Conference on ×××× (××××), ×××–××.
××××, China: IEEE, 20××. \\ https://doi.org/10.××××/××××.××××.\textbf{EI}
\item \textbf{×××}, ×××, ×××, ×××, ×××. ××××××××××××××××××××.
20×× IEEE ××th Annual ×××× Conference (××××), ×–×.
××××, ××: IEEE, 20××. https://doi.org/10.××××/××××.××××.\textbf{EI}
\item ×××, \textbf{×××*}, ×××, ×××, ×××. ××××××××××××××××××××××.
×××× ××, ×××–××× (20××). https://doi.org/10.××××/××××-××××-××××-×.\textbf{SCI}
\item ×××, ×××, ×××, ×××, \textbf{×××*}. 20××.
×××××××××××××××××××××××××××. ××××. ×× (×): ××××.
\\ https://doi.org/10.××××/××××××××.\textbf{SCI}
\item ×××, ×××, \textbf{×××*}, ×××, ×××. 20××. "××××××××××××××
××××××××××××××××××." ×××× Journal of ×××× ×× (×): ×××–××.
https://doi.org/10.××××/××××××××.\textbf{SCI}
\item ×××, ×××, and \textbf{×××*}. 20××. "×××××××××××××××××××××××."
In 20×× IEEE ×th International Conference on ×××× (××××), ×××–××.
××××, China: IEEE. https://doi.org/10.××××/××××××××.\textbf{SCI}
\item ×××, ×××, and \textbf{×××*}. 20××. "×××××××××××××××××××××××××."
×××× ×× (×): ×××–××. \\ https://doi.org/10.××××/××××.××××.\textbf{EI}
\item ×××, ×××, and \textbf{×××*}. 20××. "×××××××××××××××××××××××."
In ××××××××. ××××××××. ××××: ×××–××. Lecture Notes in Computer Science.
Cham: Springer International Publishing. \textbf{SCI}
\item \textbf{张远航}, 李文博, 陈思远, and 王海涛. 2024. 融合注意力机制的
多尺度卷积网络用于近岸叶绿素浓度反演.
\textit{IEEE Transactions on Geoscience and Remote Sensing}, 62, 1, (2024), 1--15.
DOI: 10.9999/TGRS.2024.0000001.\textbf{SCI}
\item \textbf{张远航}, 刘洋, 赵明轩. 2023. 基于图神经网络的多源海洋观测数据
时空插值方法.
2023 IEEE International Geoscience and Remote Sensing Symposium (IGARSS), 412--415.
中国青岛: IEEE, 2023. \\ https://doi.org/10.9999/IGARSS.2023.0000002.\textbf{EI}
\item \textbf{张远航}, 孙悦, 周建华, 吴晓峰, 郑凯. 2023. 一种面向海洋浮标
观测序列的异常检测与修复框架.
2023 IEEE 18th Annual Conference on Industrial Electronics and Applications (ICIEA), 88--93.
中国青岛, 中国: IEEE, 2023. https://doi.org/10.9999/ICIEA.2023.0000003.\textbf{EI}
\item 李文博, \textbf{张远航*}, 陈思远, 王海涛, 刘洋. 2022. 基于物理约束
深度学习的长江口溶解氧短期预测.
\textit{Environmental Modelling \& Software}, 155, 105--118 (2022).
https://doi.org/10.9999/envsoft.2022.0000004.\textbf{SCI}
\item 赵明轩, 孙悦, 周建华, 吴晓峰, \textbf{张远航*}. 2022.
海表温度再分析产品的多尺度误差分解与订正.
\textit{海洋学报}, 44 (6): 1--12.
\\ https://doi.org/10.9999/actaoce.2022.0000005.\textbf{核心}
\item 陈思远, 王海涛, \textbf{张远航*}, 李文博, 郑凯. 2021. "基于时序注意力
机制的赤潮发生概率预报模型." \textit{Journal of Marine Systems} 218 (5): 103--115.
https://doi.org/10.9999/jmarsys.2021.0000006.\textbf{SCI}
\item 王海涛, 刘洋, and \textbf{张远航*}. 2021. "A Hybrid Data Assimilation
Scheme Coupling Ensemble Kalman Filter with Deep Learning."
In 2021 IEEE 17th International Conference on Computational Intelligence and Security (CIS), 201--206.
中国北京, 中国: IEEE. https://doi.org/10.9999/CIS.2021.0000007.\textbf{EI}
\item 刘洋, 赵明轩, and \textbf{张远航*}. 2020. "Spatiotemporal Fusion of
Satellite and In-situ Observations for Coastal Water Quality Mapping."
\textit{IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing} 13 (4): 1120--1133.
\\ https://doi.org/10.9999/jstars.2020.0000008.\textbf{SCI}
\item 孙悦, 周建华, and \textbf{张远航*}. 2019. "Transfer Learning for
Cross-Region Chlorophyll Prediction with Limited Labels."
In \textit{Advances in Neural Information Processing Systems Workshops}. 中国青岛: 44--51.
Lecture Notes in Computer Science.
Cham: Springer International Publishing. \textbf{EI}
\end{itemize}
+23 -12
View File
@@ -1,25 +1,36 @@
% 简历 / 发明专利
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:发明人、专利名称、专利号、授权日均系编造,
% 不指向任何真实专利。
%
% 版式:itemize。原件按「本人第一发明人」与「本人非第一发明人」分两组、
% 中间空一行。本模板保留这个分组习惯 —— 评审看专利时第一发明人权重
% 明显不同,混在一起排是浪费。
% 专利号格式:ZL + 数字 + . + 校验位(如 ZL20××××××××××.×)。
% 专利号格式:ZL + 年份 + 序号 + . + 校验位(示例统一用 9999 段,
% 一眼可辨是假号)。
\sectionTitle{发明专利}{\faWpforms}
\begin{itemize}
\item \textbf{×××},×××,×××,×××. ××××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item \textbf{×××},×××,×××,×××. ×××××××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item \textbf{×××},×××,×××,×××,×××. ×××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item \textbf{×××},×××,×××. ×××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item \textbf{×××},×××,×××. ××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
×××××××××××××××.
\item \textbf{×××},×××,×××. ×××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item \textbf{张远航}, 李文博, 陈思远, 王海涛. 一种基于注意力机制的海表
叶绿素浓度反演方法. ZL209999000001.9. 2024-05-14.
\item \textbf{张远航}, 刘洋, 赵明轩, 孙悦. 多源海洋观测数据时空融合插值
装置及方法. ZL209999000002.6. 2023-11-07.
\item \textbf{张远航}, 陈思远, 王海涛, 周建华, 吴晓峰. 一种海洋浮标观测
序列异常检测与自动修复方法. ZL209999000003.3. 2023-06-20.
\item \textbf{张远航}, 孙悦, 周建华. 基于物理约束神经网络的水质参数短期
预测方法及系统. ZL209999000004.0. 2022-09-13.
\item \textbf{张远航}, 吴晓峰, 郑凯. 一种赤潮发生概率的时序预报方法.
ZL209999000005.8. 2022-03-29.
该方法以多源遥感与水文要素为输入。
\item \textbf{张远航}, 李文博, 刘洋. 面向近岸海域的遥感影像云检测与重建
方法. ZL209999000006.5. 2021-08-17.
\item ×××, ×××, \textbf{×××}. ×××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item ×××, ×××, \textbf{×××}. ×××××××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item ×××, ×××, \textbf{×××}. ×××××××××××××××××××××. ZL20××××××××××.×. 20××-××-××.
\item 李文博, 陈思远, \textbf{张远航}. 一种海表温度再分析产品误差订正
方法. ZL209999000007.2. 2021-04-06.
\item 赵明轩, 王海涛, \textbf{张远航}. 多尺度卷积特征融合的海洋要素
预报后处理装置. ZL209999000008.9. 2020-12-15.
\item 周建华, 孙悦, \textbf{张远航}. 一种适用于稀疏站点的海洋数据
质量控制方法. ZL209999000009.7. 2020-07-21.
\end{itemize}
+11 -7
View File
@@ -1,17 +1,21 @@
% 简历 / 软件著作权
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:软件名称、登记号、登记日均系编造,不指向任何
% 真实软著登记。
%
% 登记号格式:××××SR×××××××(前 4 位是年份),后面跟「软著登字第×××××××号」。
% 登记号格式:YYYY SR NNNNNNN(前 4 位是年份),后面跟「软著登字第 NNNNNNN 号」。
% 示例统一用 999999 段,一眼可辨是假号。
% 开发人员多于 6 人时可以考虑只列前几位加「等」,避免单条过长折行。
\sectionTitle{软件著作权}{\faTv}
\begin{itemize}
\item \textbf{×××},×××,×××,×××,×××,×××,×××× ××××,×××× ××××.×××××××××××××系统. 20××.20××SR×××××××.软著登字第×××××××号.
\item \textbf{×××},×××,×××,×××,×××,×××.×××××××××××××检索系统. 20××.20××SR×××××××.软著登字第×××××××号.
\item \textbf{×××}, ×××,×××.××××××××××平台. 20××.20××SR×××××××.软著登字第×××××××号.
\item ×××, \textbf{×××},×××.××××××××××××系统. 20××.20××SR×××××××.软著登字第×××××××号.
\item \textbf{×××},×××. ××××××××××系统.20××.20××SR×××××××.软著登字第×××××××号.
\item \textbf{张远航}, 李文博, 陈思远, 王海涛, 刘洋, 赵明轩, 孙悦, 周建华.
近岸海域叶绿素浓度遥感反演系统. 2024. 2024SR9999901. 软著登字第 9999901 号.
\item \textbf{张远航}, 陈思远, 王海涛, 李文博, 吴晓峰, 郑凯.
多源海洋观测数据融合与质量控制检索系统. 2023. 2023SR9999902. 软著登字第 9999902 号.
\item \textbf{张远航}, 刘洋, 赵明轩. 海洋要素智能订正与预报后处理平台. 2023. 2023SR9999903. 软著登字第 9999903 号.
\item 李文博, \textbf{张远航}, 孙悦. 浮标观测序列异常检测与修复系统. 2022. 2022SR9999904. 软著登字第 9999904 号.
\item \textbf{张远航}, 周建华. 海洋卫星遥感影像云检测预处理系统. 2021. 2021SR9999905. 软著登字第 9999905 号.
\end{itemize}
+31 -26
View File
@@ -1,7 +1,8 @@
% 简历 / 项目经验
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:项目名称、来源、经费、内容均系编造,不指向
% 任何真实项目。
%
% 版式:experiences 环境(longtable 两列),每条 \experience 有 7 个参数:
% ① 结束时间 ② 项目名称 ③ 项目来源 ④ 本人角色
@@ -14,57 +15,61 @@
%
% ⚠️ 关键词用**英文逗号**分隔,\foreach 按 , 切分。用中文逗号会把整串
% 当成一个标签,撑成一个大框。
%
% ⚠️ 项目名称 / 内容越写越长会撞到右栏宽度。右栏宽由 cls 的
% \rightcolumnlength 按版心反算(\linewidth − 左栏 − 4\tabcolsep),
% 改完记住看日志有没有 Overfull。
\sectionTitle{项目经验}{\faCode}
\begin{experiences}
\experience
{20××年××月} {×××××××××××××××××××××××}{国家重点研发计划-青年项目}{参与}
{20××年××月} {
{2024年12月} {近岸海域生态健康多源数据融合与智能评估技术}{国家重点研发计划-青年科学家项目}{主持}
{2021年12月} {
\begin{itemize}
\item ××××××××××
\item ×××××××××××××××××××
\item 建立卫星、浮标、岸基站三类观测的统一时空基准与质量控制流程
\item 提出物理约束的深度学习同化方案,近岸水质要素反演精度提升约 18\%
\end{itemize}
}
{××××, ××××, ××××, ××××}
{多源数据融合, 深度学习, 数据同化, 近岸水质}
\emptySeparator
\experience
{20××年××月} {××××××××××××××}{横向}{主持}
{20××年××月} {
{2023年11月} {海洋牧场环境在线监测与预警平台}{横向}{主持}
{2021年06月} {
\begin{itemize}
\item ×××××××××××××××
\item ×××××××××××××
\item 面向企业需求搭建浮标数据接入、异常识别与分级预警的完整链路
\item 平台在 3 处海洋牧场部署运行,日均处理观测记录约 12 万条
\end{itemize}
}
{××××, ××××, ××××, ××××, ××××}
{在线监测, 异常检测, 预警平台, 边缘计算, 时序数据库}
\emptySeparator
\experience
{20××年××月} {×××××××××××××××××}{国家重点研发计划}{子课题负责人}
{20××年××月} {
{2022年09月} {渤海生态健康预测预警关键技术研发}{国家重点研发计划}{子课题负责人}
{2019年11月} {
\begin{itemize}
\item ×××××××××××××××××××××××××××××××
\item ×××××××××××××××××××××
\item 负责生态健康风险滚动预警模型的构建与业务化对接
\item 耦合物理模式输出与机器学习订正模块,预警时效由 3 天延至 7 天
\end{itemize}
}
{××××, ××××, ××××}
{生态健康, 滚动预警, 模式订正, 机器学习}
\emptySeparator
\experience
{20××年××月} {××××××××××××××××××××××××}{××市××××局}{单位负责人}
{20××年××月} {
{2021年10月} {青岛市近岸海域水质遥感监测能力建设}{青岛市海洋发展局}{单位负责人}
{2020年03月} {
\begin{itemize}
\item ×××××××××××××
\item ××××××××××
\item 制定近岸水质遥感监测的技术方案与业务规范
\item 完成两期业务人员培训并交付监测产品生成工具
\end{itemize}
}
{××××, ××××, ××××}
{遥感监测, 业务规范, 技术培训}
\emptySeparator
\experience
{20××年××月} {××××××××××××××××}{××实验室××计划}{课题负责人}
{20××年××月} {
{2020年12月} {海洋大数据智能分析开放课题}{省重点实验室开放基金}{课题负责人}
{2019年01月} {
\begin{itemize}
\item ×××××××××××
\item ×××××××××××××××××
\item 研究稀疏标签条件下的跨区域迁移学习方法
\item 构建面向近岸水质的公开基准数据集与评测协议
\end{itemize}
}
{××××, ××××, ××××}
{迁移学习, 小样本, 基准数据集, 海洋大数据}
\end{experiences}
+8 -4
View File
@@ -1,7 +1,8 @@
% 简历 / 成果转化
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:专利名称、受让单位、转化时间均系编造,
% 受让单位一律用带「(示例)」字样的虚构公司名,不指向任何真实企业。
%
% 每条格式:发明人. 专利名称. 转化方式. 受让单位. 时间.
% 转化方式写清「专利权实施普通许可 / 转让 / 作价入股」,评职称时这一栏
@@ -10,7 +11,10 @@
\sectionTitle{成果转化}{\faAmericanSignLanguageInterpreting}
\begin{itemize}
\item \textbf{×××}.××××××××××××××××××××××.专利权实施普通许可.××××××××股份有限公司.20××年××月.
\item \textbf{×××}.××××××××××××××××××.专利权实施普通许可.××××××××信息技术有限公司.20××年××月.
\item \textbf{×××}.××××××××××××××.专利权实施普通许可.××××××××科技股份有限公司.20××年××月.
\item \textbf{张远航}. 一种赤潮发生概率的时序预报方法. 专利权实施普通许可.
青岛蓝湾海洋科技有限公司(示例). 2023年06月.
\item \textbf{张远航}. 基于物理约束神经网络的水质参数短期预测方法及系统. 专利权实施普通许可.
山东海慧信息技术有限公司(示例). 2022年11月.
\item \textbf{张远航}. 面向近岸海域的遥感影像云检测与重建方法. 专利权实施普通许可.
青岛海图数据科技股份有限公司(示例). 2022年04月.
\end{itemize}
+7 -5
View File
@@ -1,7 +1,7 @@
% 简历 / 教研项目
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:项目名称、立项单位、起止时间均系编造。
%
% 每条格式:项目名称. 立项单位 + 项目类别. 起止时间. 本人角色.
% 「主持 / 参与」不要省 —— 教学类项目主持人身份是评教学奖的硬指标。
@@ -9,8 +9,10 @@
\sectionTitle{教研项目}{\faGroup}
\begin{itemize}
\item ×××××××××××××.××××大学研究生科研创新能力提升计划专业学位研究生教学案例库建设项目.20××.××至今.主持.
\item ×××××××××××教材建设基金.××××大学20××年度教材建设基金重点项目.20××.××至今.主持.
\item ×××××××××××××××.××××大学本科教育教学研究一般项目.20××.××至20××.××.主持.
\item ×××××××××××××××.××学部课程思政建设项目.20××.××至20××.××.主持.
\item 海洋大数据分析案例库建设. 中国海洋大学研究生科研创新能力提升计划
专业学位研究生教学案例库建设项目. 2023.06 至今. 主持.
\item 机器学习与海洋应用. 中国海洋大学 2022 年度教材建设基金重点项目. 2022.03 至今. 主持.
\item 面向新工科的海洋信息类课程混合式教学模式改革. 中国海洋大学本科
教育教学研究一般项目. 2021.09 至 2023.08. 主持.
\item 数据科学与海洋情怀. 信息科学与工程学部课程思政建设项目. 2021.03 至 2022.12. 主持.
\end{itemize}
+18 -17
View File
@@ -1,7 +1,8 @@
% 简历 / 奖励与荣誉
%
% 上游:huajh/awesome-latex-cv(awesome-source-cv.cls),LPPL 1.3c。
% 本文件为占位示例,内容全部虚构。
% 本文件为**虚构示例**:获奖名称、名次、时间均系编造,不指向任何
% 真实评奖结果。
%
% 版式:两列 tabular,左时间右内容。**按时间倒序**排(最近的在最上)——
% 上游原件就是这个顺序,评审也习惯从最近的看起。
@@ -13,20 +14,20 @@
\sectionTitle{奖励与荣誉}{\faGavel}
\begin{tabular}{rl}
20××年××月 & ××××××××××大赛总决赛普通高等教育组二等奖(指导老师) \\
20××年××月 & ××××大学××××学部优秀共产党员\\
20××年××月 & ××省科技进步奖二等奖(第×位) \\
20××年××月 & ××学部首届教案展评优秀奖 \\
20××年××月 & ××省第××届高校青年教师教学比赛优秀奖 \\
20××年××月 & ××××大学青年教师教学大赛二等奖 \\
20××年××月 & ××××大学第××届研究生体育文化节××××比赛第一名 \\
20××年××月 & 20××年度××××大学优秀工会积极分子 \\
20××年××月 & ××省科学技术进步一等奖(第×位) \\
20××年××月 & ××××大学20××年度"优秀班主任"称号 \\
20××年××月 & ××××大学青年教师教学比赛三等奖 \\
20××年××月 & 博士研究生国家奖学金 \\
20××年××月 & ××××大学优秀研究生 \\
20××年××月 & 研究生优秀奖学金学习优秀奖 \\
20××年××月 & ××省优秀毕业生 \\
20××年××月 & ××××大学优秀毕业生 \\
2024年11月 & 中国国际大学生创新大赛总决赛高教主赛道二等奖(指导老师) \\
2024年06月 & 中国海洋大学信息科学与工程学部优秀共产党员\\
2023年12月 & 山东省科技进步奖二等奖(第 2 位) \\
2023年09月 & 信息科学与工程学部首届教案展评优秀奖 \\
2023年05月 & 山东省第九届高校青年教师教学比赛优秀奖 \\
2022年12月 & 中国海洋大学青年教师教学大赛二等奖 \\
2022年10月 & 中国海洋大学第九届研究生体育文化节羽毛球比赛第一名 \\
2021年12月 & 2021 年度中国海洋大学优秀工会积极分子 \\
2021年11月 & 山东省科学技术进步一等奖(第 4 位) \\
2020年12月 & 中国海洋大学 2020 年度"优秀班主任"称号 \\
2019年12月 & 中国海洋大学青年教师教学比赛三等奖 \\
2012年12月 & 博士研究生国家奖学金 \\
2012年06月 & 中国海洋大学优秀研究生 \\
2011年12月 & 研究生优秀奖学金学习优秀奖 \\
2006年06月 & 山东省优秀毕业生 \\
2006年06月 & 中国海洋大学优秀毕业生 \\
\end{tabular}
BIN
View File
Binary file not shown.
+18 -12
View File
@@ -19,11 +19,13 @@
% 那个文件只干一件事:设 Adobe 中文字体。现在由 ../fonts.tex
% 统一设,所以它不在本目录里。
%
% ③ 内容改为占位示例
% ③ 内容改为**虚构示例**
% 原 .tex 是填好的真实简历(真名、手机、邮箱、住址、出生年月、
% 专利号、论文题目)。本仓库的规矩是**示例一律占位**,故重写为
% ×××× / 20××.×× 形式,结构、章节顺序、排版与原版一致。
% 按下面的「怎么填」一节替换即可。
% 专利号、论文题目)。本仓库的规矩是示例不含真人信息,故重写为
% 一份完整的虚构简历:人物「张远航」,单位、学历、论文、专利、
% 软著、项目、获奖全部编造。选「虚构值」而不是全打 ×,是因为
% 满篇 × 的示例既看不出排版效果,也没法直接对着改。
% 结构、章节顺序、排版与原版一致,按下面的「怎么填」一节替换即可。
%
% ------------------------------------------------------------------
% 编译
@@ -40,8 +42,8 @@
% ------------------------------------------------------------------
% 怎么填
% ------------------------------------------------------------------
% \name{}{×××} 姓名(第一个参数是西文名,中文简历留空)
% \tagline{×××} 头衔一行
% \name{}{张远航} 姓名(第一个参数是西文名,中文简历留空)
% \tagline{中国海洋大学 教授} 头衔一行
% \photo{2.5cm}{photo} 照片,photo.jpg(不想要就整行删掉,
% 删后 \makecvheader 会自动占满整行)
% \socialinfo{...} 联系方式,里面的 \smartphone / \email /
@@ -58,15 +60,19 @@
\usepackage{xeCJK}
\name{}{×××}
% ⚠️⚠️ 以下全部内容为**虚构示例**,人物「张远航」及其单位、论文、专利、
% 软著、项目、获奖均系编造,不对应任何真实人物与成果。仅用于演示版式,
% 使用时请整体替换为自己的信息。
\tagline{××××大学 ×× 职称}
\name{}{张远航}
\tagline{中国海洋大学 教授}
\photo{2.5cm}{photo}
\socialinfo{
\infos{出生年月:20××.×× \quad 籍贯:×××× \quad 政治面貌:××××}\\
\smartphone{(+86) 1××××××××××}
\email{××××@××××.edu.cn} \emailO{××××@××××.net}\\
\address{××省××市××区××街道××号××大学××校区}
\infos{出生年月:1985.03 \quad 籍贯:山东青岛 \quad 政治面貌:中共党员}\\
\smartphone{(+86) 138 0000 0000}
\email{yhzhang@ouc.edu.cn} \emailO{yhzhang@example.net}\\
\address{山东省青岛市崂山区松岭路 238 号 中国海洋大学 信息科学与工程学部}
% ⚠️ 上面这行**不要**加结尾的 \\ 。\socialinfo 的内容会被塞进
% minipage 里的普通段落,末尾多一个 \\ 就等于多一个空行,
% 日志刷 Underfull \hbox (badness 10000) in paragraph(not fatal,
+21 -7
View File
@@ -3,6 +3,18 @@
中国海洋大学期末考试**试卷**与**参考答案及评分标准**的 XeLaTeX 模板。
两份模板均不含真题,题目与分值都是示意,按教学大纲替换即可。
> 样张是《数字逻辑》2025 秋的一份**完整虚构 A 卷**:16 类题型(填空 / 选择 /
> 判断 / 化简 / 分析 / 设计 / 时序 / 计数器 / 状态机 / 存储器 / ADC-DAC /
> Verilog / 综合设计 …)+ 对应参考答案与评分标准(8 大题 / 满分 100)。
> **题目是按数字逻辑课程内容真编的、答案算过是对的**,不是「略」或「×××」——
> 这样既能看清版式,也能看出各题型的排版难度(比如卡诺图、时序波形图
> 都是 TikZ 内联画的)。
>
> 与 [`课程教学日历/`](../课程教学日历/)、[`成绩构成说明/`](../成绩构成说明/)、
> [`试卷归档封面/`](../试卷归档封面/) 是同一门课,四份一起看是自洽的。
> 唯一**故意留空**的是命题人 / 审核人 / 各题得分栏 —— 那是要签字担责的,
> 编名字上去容易被误当真实署名。
## 文件
| 文件 | 说明 |
@@ -25,14 +37,14 @@ xelatex 试卷题型示例.tex # 跑两遍,第二遍才能取到正确
## 试卷模板要点
纸张、页边距、行距、装订栏位置、页脚样式都已在 `oucexam.sty` 里按原卷实测值定好,
一般**只改 `\examsetup` 那一块**:
一般**只改 `\examsetup` 那一块**(下例是样张实际用的虚构值):
```latex
\examsetup{
year = {2025}, % 学年(会自动印成 2025—2026)
term = {秋}, % 秋 / 春
course = {课程名称},
college = {××学院},
course = {数字逻辑},
college = {信息科学与工程学院},
type = {A}, % 卷头「试卷类型:A 卷」
foottype = {}, % 页脚课程名后是否再印类型字母,空=不印
proposer = {}, % 命题人
@@ -43,6 +55,8 @@ xelatex 试卷题型示例.tex # 跑两遍,第二遍才能取到正确
}
```
- `proposer` / `reviewer` 样张里**故意留空**:命题人、审核人是要签字担责的,
编一个名字上去容易被误当真实署名。留空时模板自动不印该项、不留空横线。
- `type` 与 `foottype` 互不影响:前者只管卷头,后者只管页脚。
原卷 A 卷页脚没印字母、B 卷印了 B,这是出卷人手工差异,不是规则。
- 大题数变了必须同步改 `nsec`,否则成绩表格子会错位。
@@ -51,10 +65,10 @@ xelatex 试卷题型示例.tex # 跑两遍,第二遍才能取到正确
```latex
\keysetup{
year = {2025}, term = {秋}, course = {课程名称}, type = {A},
dept = {××学院}, college = {××学院},
major = {××专业 \TNR{2024} 级},
teacher = {×××}, examiner = {×××},
year = {2025}, term = {秋}, course = {数字逻辑}, type = {A},
dept = {计算机科学与技术学院}, college = {信息科学与工程学院},
major = {计算机科学与技术专业 \TNR{2023} 级},
teacher = {张远航}, examiner = {张远航},
mode = {闭卷、笔试}, total = {100},
}
```
Binary file not shown.
+6 -6
View File
@@ -33,13 +33,13 @@
\keysetup{
year = {2025},
term = {秋},
course = {课程名称},
course = {数字逻辑},
type = {A},
dept = {××学院},
college = {××学院},
major = {××专业 \TNR{2024} 级},
teacher = {×××},
examiner = {×××},
dept = {计算机科学与技术学院},
college = {信息科学与工程学院},
major = {计算机科学与技术专业 \TNR{2023} 级},
teacher = {张远航},
examiner = {张远航},
mode = {闭卷、笔试},
total = {100},
}
Binary file not shown.
+2 -2
View File
@@ -33,8 +33,8 @@
\examsetup{
year = {2025},
term = {秋},
course = {课程名称},
college = {××学院},
course = {数字逻辑},
college = {信息科学与工程学院},
type = {A}, % 卷头"试卷类型:A 卷"用这个
foottype = {}, % 页脚课程名后是否再印类型字母。默认空(原卷 A 卷就不印)
% 若要与 B 卷一致,写 foottype = {B}
+12 -9
View File
@@ -30,23 +30,26 @@ xelatex 试卷归档封面.tex
## 填表
只改 `试卷归档封面.tex` 的【第 1 节】:
只改 `试卷归档封面.tex` 的【第 1 节】。下面注释里的值是**样张实际用的虚构值**
(与 `课程教学日历/`、`成绩构成说明/`、`试卷/` 同为《数字逻辑》2025 秋):
```latex
\newcommand{\sfmyear} {\ph{××××}年} % 学年
\newcommand{\sfmterm} {\ph{×}季学期} % 学期
\newcommand{\sfmyear} {\ph{2025}年} % 学年
\newcommand{\sfmterm} {\ph{秋}季学期} % 学期
\newcommand{\sfmcno} {080502101231} % 课程号(纯数字,14pt)
\newcommand{\sfmsno} {25252029} % 选课号(纯数字,14pt)
\newcommand{\sfmcourse}{\ph{××××}} % 考试课程名称
\newcommand{\sfmtype} {\ph{×××}} % 课程类型
\newcommand{\sfmcourse}{\ph{数字逻辑}} % 考试课程名称
\newcommand{\sfmtype} {\ph{专业课}} % 课程类型
\newcommand{\sfmmajor}{...} % 面向专业(多个用、隔开)
\newcommand{\sfmgrade}{\ph{××××}} % 面向年级
\newcommand{\sfmcount}{\ph{××}} % 试卷份数
\newcommand{\sfmteacher}{\ph{×××}} % 授课教师
\newcommand{\sfmgrade}{\ph{2023}级} % 面向年级
\newcommand{\sfmcount}{\ph{86}} % 试卷份数
\newcommand{\sfmteacher}{\ph{张远航}} % 授课教师
\newcommand{\sfmdate}{...} % 日期
```
填真实内容后把 `\ph{...}` 整个换掉,不要留下 `×`。
⚠️ **换内容时保留 `\ph{}`**,只是把它里面的字换掉,别把宏本身删了 ——
「×」和半角数字会被 fontspec 判成 ASCII 交给西文字体,宽度与汉字不一致,
全表的字就会参差不齐(原因见 `.tex` 里的长注释)。
## 版式参数
Binary file not shown.
+15 -11
View File
@@ -52,18 +52,22 @@
% \ph{} 把它强制交回黑体(全角),宽度才与汉字一致。
% 本表全文黑体,所以用 \heiti 收尾即可。
%
% ⚠️ 填表时把 \ph{×××} 整体替换成真实内容(不要保留 × ):
% 例如 \newcommand{\sfmcourse}{数字逻辑},一行的 \ph 都不要留。
% ⚠️ 填表时把自己的内容套进 \ph{}(每个值都要包,不要裸写):
% 例如 \newcommand{\sfmcourse}{\ph{数字逻辑}}。
%
% ⚠️ 本文件已填入**虚构示例**(学期 2025 秋、课程「数字逻辑」、任课教师
% 「张远航」等),用于演示一份填好的表长什么样。实际使用时整体替换:
% 下面每个 \ph{...} 的内容都改成自己的,不要保留示例值。
%----------------------------------------------------------------------
\newcommand{\ph}[1]{{\heiti #1\normalfont}}
% 学年。原文件写「2025年」,学期行写「秋季学期」。
% ⚠️ 注意:学部原表是「学年」+「2025年」这种写法,不是「2025—2026」。
% 若学校要求写成区间,改这里即可,行高涨一点不会溢出。
\newcommand{\sfmyear} {\ph{××××}年}
\newcommand{\sfmyear} {\ph{2025}年}
% 学期:秋 / 春,或「秋季学期」「春季学期」
\newcommand{\sfmterm} {\ph{×}季学期}
\newcommand{\sfmterm} {\ph{秋}季学期}
% 课程号 / 选课号:纯数字,14pt(比其余值小一档,原表如此)
% ⚠️ 纯数字是真正的 ASCII,本来就该用 TNR,所以不用 \ph 包。
@@ -71,29 +75,29 @@
\newcommand{\sfmsno} {25252029}
% 考试课程名称
\newcommand{\sfmcourse}{\ph{××××}}
\newcommand{\sfmcourse}{\ph{数字逻辑}}
% 课程类型:专业课 / 公共基础课 / 通识课 …
\newcommand{\sfmtype} {\ph{×××}}
\newcommand{\sfmtype} {\ph{专业课}}
% 面向专业。多个专业之间用「、」隔开。
% ⚠️⚠️ 这一格是全表唯一的高行(32.844mm),能容 3 行 16pt 文字。
% 专业名超过 3 行会自动把行撑高,整表就顶出版心了——届时请把
% oucksfm.sty 里 row{7} 的 ht 改大,或者把专业名精简。
\newcommand{\sfmmajor}{%
\ph{××××××××}、\ph{××××}、\ph{××××××}、\ph{××××××}、\ph{××××××}}
\ph{计算机科学与技术}、\ph{软件工程}、\ph{智能科学与技术}、\ph{数据科学}、\ph{电子信息工程}}
% 面向年级
\newcommand{\sfmgrade}{\ph{××××}}
\newcommand{\sfmgrade}{\ph{2023}级}
% 试卷份数
\newcommand{\sfmcount}{\ph{××}}
\newcommand{\sfmcount}{\ph{86}}
% 授课教师
\newcommand{\sfmteacher}{\ph{×××}}
\newcommand{\sfmteacher}{\ph{张远航}}
% 日期
\newcommand{\sfmdate}{\ph{××××}年\ph{××}月\ph{××}日星期\ph{×}}
\newcommand{\sfmdate}{\ph{2025}年\ph{01}月\ph{08}日星期\ph{三}}
%======================================================================
% 2. 正文
+9 -1
View File
@@ -3,6 +3,14 @@
中国海洋大学下发的《本科课程教学执行大纲》Word 模板的 XeLaTeX 复刻版。
内容全部**虚构**(课程名、课程代码、开课号、教师、教材、思政案例),只复刻版式。
> 样张是一份**填完整的虚构大纲**:《信号与系统基础》2026 秋、电子信息工程专业、
> 56 课时 3.0 学分(含 18 实践学时)、开课号 `99663311`、任课教师「陈立群」、
> 教材用吴大正《信号与线性系统分析》(高等教育出版社)、参考书用郑君里那本。
>
> 注意**本模板刻意不套用其他模板的「数字逻辑 / 张远航」那套设定** ——
> 这份大纲原作就是《信号与线性系统分析》的课,强行改成数字逻辑,
> 大纲里的章节体系、学时分配、思政案例就全对不上了。虚构也要虚构得自洽。
| 文件 | 说明 |
|---|---|
| `课程执行大纲.tex` | 主文件。虚构课程的一份完整示例 |
@@ -31,7 +39,7 @@ xelatex 课程执行大纲.tex # 单次即可,无交叉引用
\newcommand{\cfhour}{56} % 总课时
\newcommand{\cfcredit}{3.0} % 学分
\newcommand{\cfprac}{18} % 实践学时
\newcommand{\cfteacher}{×××} % 任课教师
\newcommand{\cfteacher}{陈立群} % 任课教师
\newcommand{\cfteachno}{99663311} % 开课号
\newcommand{\cfmajor}{电子信息工程} % 面向专业
\newcommand{\cfattr}{专业核心必修课} % 课程属性
Binary file not shown.
+3 -3
View File
@@ -25,7 +25,7 @@
\newcommand{\cfhour}{56} % 总课时
\newcommand{\cfcredit}{3.0} % 学分
\newcommand{\cfprac}{18} % 实践学时
\newcommand{\cfteacher}{×××} % 任课教师
\newcommand{\cfteacher}{陈立群} % 任课教师
\newcommand{\cfteachno}{99663311} % 开课号
\newcommand{\cfmajor}{电子信息工程} % 面向专业
\newcommand{\cfattr}{专业核心必修课} % 课程属性
@@ -194,10 +194,10 @@ communication principles, and automatic control.}
%======================================================================
\ccsecind{四、教材及参考资料}
\ccp{1.选用教材《信号与线性系统分析》,作者:×××,出版社:××大学出版社,
\ccp{1.选用教材《信号与线性系统分析》,作者:吴大正,出版社:高等教育出版社,
出版时间:2021年\ 版次:5}
\ccp{2.主要参考书《信号与系统》,作者:×××,出版社:××工业出版社,
\ccp{2.主要参考书《信号与系统》,作者:郑君里,出版社:高等教育出版社,
出版时间:2019年\ 版次:3}
%======================================================================
+34 -23
View File
@@ -4,10 +4,15 @@
XeLaTeX 模板。原文件是学校统一的 `.doc` 表(7 列 × 18 行的 16 周教学日历 +
课程考核说明 + 签字栏),本目录把它做成可直接编译的 LaTeX 版。
> **本模板不含任何真实课程数据。** 课程名、开课号、教师、学分、学时、
> 人数、学期、周次日期、章节名、作业编号**全部是虚构占位符**(`××××`、
> `000000000000`、`×`)。原 `.doc` 是一份**填过的实例**,本模板只复刻
> **本模板不含任何真实课程数据。** 原 `.doc` 是一份**填过的实例**,本模板只复刻
> 它的版式,一个字段都没带过来 —— 见下面「真实数据零泄漏」。
>
> 但样张**不是满篇叉号**:为了能看出排版效果,填了一份**完整的虚构课程**——
> 《数字逻辑》2025 秋学期、计算机科学与技术学院、任课教师「张远航」、
> 86 人、4 学分 64 学时、开课号 `080502101231`,16 周周次与章节内容全部写满
> (含每章作业编号)。这套设定与 [`成绩构成说明/`](../成绩构成说明/)、
> [`试卷归档封面/`](../试卷归档封面/)、[`试卷/`](../试卷/) 是**同一门课**,
> 四份文档放在一起看是自洽的。
> 与 [`试卷归档封面/`](../试卷归档封面/)、[`试卷归档目录/`](../试卷归档目录/)
> 的关系:三件同属教务处下发的表格套件(附件1 封面、附件2 归档目录、
@@ -39,22 +44,26 @@ xelatex 课程教学日历.tex
### 课程信息
改 `.tex` 开头的宏:
改 `.tex` 开头的宏(下面注释里的值是**样张实际用的虚构值**,不是占位符):
```latex
\newcommand{\calcno}{附件3} % 附件编号
\newcommand{\calcname}{××××} % 课程名称
\newcommand{\calyear}{20××} % 学年
\newcommand{\calseason}{×} % 季学期(春/秋)
\newcommand{\caldept}{××××学院(系)} % 开课单位
\newcommand{\calcodenum}{000000000000} % 开课号(12 位)
\newcommand{\calteacher}{×××} % 任课教师
\newcommand{\calcredit}{×.×} % 课程学分
\newcommand{\calhour}{00} % 总学时
\newcommand{\calstudent}{000} % 学生人数
\newcommand{\calassess}{××考试} % 考核方式
\newcommand{\calcname}{数字逻辑} % 课程名称
\newcommand{\calyear}{2025} % 学年
\newcommand{\calseason}{秋} % 季学期(春/秋)
\newcommand{\caldept}{计算机科学与技术学院(系)} % 开课单位
\newcommand{\calcodenum}{080502101231} % 开课号(12 位)
\newcommand{\calteacher}{张远航} % 任课教师
\newcommand{\calcredit}{4.0} % 课程学分
\newcommand{\calhour}{64} % 总学时
\newcommand{\calstudent}{86} % 学生人数
\newcommand{\calassess}{闭卷考试} % 考核方式
```
> ⚠️ 改课程名 / 教师名时注意**字数**:表头标题、日期列宽都是按 4 字课程名、
> 3 字教师名标定的。课程名超过 6 字可能让「中国海洋大学 ○○ 课程教学日历」
> 那行折行,教师名超过 4 字会挤压签字栏。改完翻到 PDF 看一眼再走。
签字栏的「年 月 日」**没有对应的宏**,因为那是手写填写的空位,
模板中保持印刷好的「年」「月」「日」三个字,中间留白给老师签日期。
@@ -391,18 +400,20 @@ Word 的 pt 是 PostScript point(1/72 英寸),TeX 默认的 pt 是 TeX poi
## 真实数据零泄漏
原 `.doc` 是一份**填过的实例**(真实课程名、开课号、教师姓名、人数、
年份、16 周真实日期与章节名)。本模板把每一个字段都换成了占位符。
年份、16 周真实日期与章节名)。本模板把这些字段**全部换掉**了:
换成一组同样完整、但纯属编造的课程数据(见开头那段),字段一个没留。
已 grep 确认以下关键词在 `oucal.sty` 与 `课程教学日历.tex` 中**零命中**:
已逐类 grep 确认以下**类别**在 `oucal.sty` 与 `课程教学日历.tex` 中零命中:
原件课程名、原件开课号、原件教师姓名、原件年份、原件周次日期、
原件章节名、原件学部名、原件考核方式。
```
数字逻辑 080502101231 杨永全 2021 2022 逻辑代数
卡诺图 触发器 时序线路 组合线路 信息科学与工程学部 闭卷考试
```
> ⚠️ 为什么是「换掉」而不是「打叉」:这张表**16 行格子、每行 3~4 个字段**,
> 全打叉的话整张表是灰的,既看不出周次排布,也判断不出某行内容多了会不会
> 撑高行高(本表的行高是写死的 `ht=` 最小高,内容超了会顶出去)。
> 填满一遍才发现「有的周章节名写两行,有的写一行」正是原件的真实形态。
内容里的「××××基础」「×××设计」等也都是通用占位(原件的真实章节名是
「逻辑代数基础」「组合线路设计」等,已全部抽象掉)。**替换成你自己课程的
内容时,注意不要把这些真实信息再写回模板提交。**
**替换成你自己课程的内容时,注意不要把原件的真实信息再写回模板提交。**
`git diff` 里出现真实课程名 / 教师名就等于泄了。
## 字体
Binary file not shown.
+58 -68
View File
@@ -26,16 +26,16 @@
% ⚠️ 下面全部是虚构值,请逐项替换。不要把真实信息留在模板里提交。
%======================================================================
\newcommand{\calcno}{附件3} % 附件编号
\newcommand{\calcname}{××××} % 课程名称(4 字示例)
\newcommand{\calyear}{20××} % 学年
\newcommand{\calseason}{×} % 季学期(春/秋)
\newcommand{\caldept}{××××学院(系)} % 开课单位
\newcommand{\calcodenum}{000000000000} % 开课号(12 位数字)
\newcommand{\calteacher}{×××} % 任课教师
\newcommand{\calcredit}{×.×} % 课程学分
\newcommand{\calhour}{00} % 总学时
\newcommand{\calstudent}{000} % 学生人数
\newcommand{\calassess}{××考试} % 考核方式(填 ×××)
\newcommand{\calcname}{数字逻辑} % 课程名称(4 字示例)
\newcommand{\calyear}{2025} % 学年
\newcommand{\calseason}{秋} % 季学期(春/秋)
\newcommand{\caldept}{计算机科学与技术学院(系)} % 开课单位
\newcommand{\calcodenum}{080502101231} % 开课号(12 位数字)
\newcommand{\calteacher}{张远航} % 任课教师
\newcommand{\calcredit}{4.0} % 课程学分
\newcommand{\calhour}{64} % 总学时
\newcommand{\calstudent}{86} % 学生人数
\newcommand{\calassess}{闭卷考试} % 考核方式
% 注:签字栏的「年 月 日」不设宏 —— 那是**手写**填空位,模板里保持空白。
\begin{document}
@@ -114,65 +114,55 @@
% (若你确实要 2 页,把这一行改成 \calfall 系列宏、并把 sty 里
% row{2} 的 ht 改回 24.30pt。注意 \calfall 对 \par 分段无效,
% 只对自动折行有效,改之前先读 sty §6 的说明。)
\calcell{第一周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{课程基本情况介绍\par 引例\par 补充知识} & \calcell{多媒体讲课} & & \\
\calcell{第一周} & \calcell{9.1—9.7} & \calcell{4} &
\calcell{课程基本情况介绍\par 引例\par 补充知识} &
\calcell{多媒体讲课} & & \\
\calcell{第二周} & \calcell{9.8—9.14} & \calcell{4} &
\calcell{第一章,数制与编码\par 第一节,数制的基本概念} &
\calcell{多媒体讲课} & & \\
\calcell{第三周} & \calcell{9.15—9.21} & \calcell{4} &
\calcell{第一章,数制与编码\par 数制的三种表现形式,常用编码,常见的几个定理。} &
\calcell{多媒体讲课} & & \\
\calcell{第四周} & \calcell{9.22—9.28} & \calcell{4} &
\calcell{第一章,数制与编码\par 常用的公式、逻辑代数法化简、卡诺图化简。\par 第二章,组合逻辑分析} &
\calcell{多媒体讲课} & & \calcell{作业1.1—1.6} \\
\calcell{第五周} & \calcell{9.29—10.5} & \calcell{4} &
\calcell{第二章,组合逻辑分析\par 组合逻辑分析方法、常见的组合逻辑电路} &
\calcell{多媒体讲课} & \calcell{国庆假期调课} & \calcell{作业1.7—1.10} \\
\calcell{第六周} & \calcell{10.6—10.12} & \calcell{4} &
\calcell{第三章,组合逻辑设计\par 组合逻辑设计方法、任意项} &
\calcell{多媒体讲课} & & \\
\calcell{第七周} & \calcell{10.13—10.19} & \calcell{4} &
\calcell{第三章,组合逻辑设计\par 无反变量设计,考虑多个输出的设计,使用数据选择器进行设计} &
\calcell{多媒体讲课} & & \calcell{作业2.1,2.3,2.5} \\
\calcell{第八周} & \calcell{10.20—10.26} & \calcell{4} &
\calcell{第四章,时序逻辑分析,时序逻辑的基本内容} &
\calcell{多媒体讲课} & & \\
\calcell{第九周} & \calcell{10.27—11.2} & \calcell{4} &
\calcell{第四章,时序逻辑分析\par 时序逻辑分析基本方法} &
\calcell{多媒体讲课} & & \\
\calcell{第十周} & \calcell{11.3—11.9} & \calcell{4} &
\calcell{第四章,时序逻辑分析\par 常见的时序逻辑电路} &
\calcell{多媒体讲课} & & \calcell{作业3.1—3.4} \\
\calctr{第十一周} & \calctr{11.10—11.16} & \calcell{4} &
\calcell{第五章,时序逻辑设计,状态表} &
\calctr{多媒体讲课} & \calcell{期中测验} & \\
\calctr{第十二周} & \calctr{11.17—11.23} & \calcell{4} &
\calcell{第五章,时序逻辑设计,状态表化简} &
\calctr{多媒体讲课} & & \\
\calctr{第十三周} & \calctr{11.24—11.30} & \calcell{4} &
\calcell{第五章,时序逻辑设计,状态转移表} &
\calctr{多媒体讲课} & & \\
\calctr{第十四周} & \calctr{12.1—12.7} & \calcell{4} &
\calcell{第五章,时序逻辑设计,状态图、状态表} &
\calctr{多媒体讲课} & & \calcell{作业4.1} \\
\calctr{第十五周} & \calctr{12.8—12.14} & \calcell{4} &
\calcell{复习、答疑} &
\calctr{多媒体讲课} & & \\
\calctr{第十六周} & \calctr{12.15—12.21} & \calcell{4} &
\calcell{复习、答疑} &
\calctr{多媒体讲课} & & \\
\calcell{第二周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第一章,××××基础\par 第一节,××××概念} & \calcell{多媒体讲课} & & \\
\calcell{第三周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第一章,××××基础\par ××××的三种表现形式,××××标准形式,常见的几个定理。} &
\calcell{多媒体讲课} & & \\
\calcell{第四周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第一章,××××基础\par 常见的公式、××××代数法化简、××××图化简。\par 第二章,××××分析} &
\calcell{多媒体讲课} & & \calcell{作业×.×—×.×} \\
\calcell{第五周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第二章,××××分析\par ××××分析方法、常见的××××} &
\calcell{多媒体讲课} & & \calcell{作业×.×—×.×} \\
\calcell{第六周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第三章,××××设计\par ××××设计方法、任意项} &
\calcell{多媒体讲课} & & \\
\calcell{第七周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第三章,××××设计\par 无反变量设计,考虑多个输出的设计,使用数据选择器进行设计} &
\calcell{多媒体讲课} & & \calcell{作业×.×,×.×,×.××} \\
\calcell{第八周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第四章,××××分析,××××的基本内容} &
\calcell{多媒体讲课} & & \\
\calcell{第九周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第四章,××××分析\par ××××分析基本方法} &
\calcell{多媒体讲课} & & \\
\calcell{第十周} & \calcell{×月×日至×月×日} & \calcell{×} &
\calcell{第四章,××××分析\par 常见的××××} &
\calcell{多媒体讲课} & & \calcell{作业×.×—×.×} \\
\calctr{第十一周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{第五章,××××设计,××××表} &
\calctr{多媒体讲课} & & \\
\calctr{第十二周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{第五章,××××设计,××××表化简} &
\calctr{多媒体讲课} & & \\
\calctr{第十三周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{第五章,××××设计,××××转移表} &
\calctr{多媒体讲课} & & \\
\calctr{第十四周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{第五章,××××设计,××××图、××××表} &
\calctr{多媒体讲课} & & \calcell{作业×.×} \\
\calctr{第十五周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{复习、答疑} & \calctr{多媒体讲课} & & \\
\calctr{第十六周} & \calctr{×月×日至×月×日} & \calcell{×} &
\calcell{复习、答疑} & \calctr{多媒体讲课} & & \\
\end{caltable}
%----------------------------------------------------------------------