# 中国海洋大学 LaTeX 模板库 16 个文档模板 + 一份公共字体。换机器、换系统、换 Overleaf,编译结果一致。 ## 目录结构 ``` ouc_latex_template/ ├── fonts.tex ← 公共字体入口,所有模板都引用它 ├── fonts/ ← 字体文件(唯一的字体来源) ├── build.sh ← 编译脚本 ├── verify_all.sh ← 全库编译检查 │ ├── 会议预算表/ ┐ ├── 劳务发放说明表/ │ ├── 年度考核登记表/ │ ├── 特殊事项说明表/ │ ├── 成绩构成说明/ │ ├── 试卷/ │ ├── 试卷归档封面/ │ 16 个模板 ├── 试卷归档目录/ │ 每个目录自成一体 ├── 课程大纲/ │ 各自带 README ├── 课程执行大纲/ │ ├── 课程教学日历/ │ ├── 教材/ │ ├── 科技报告/ │ ├── 幻灯片/ │ └── 简历/ ┘ ``` ## 模板清单 | 模板 | 用途 | 主文件 | |---|---|---| | `会议预算表/` | 会议经费预算表 | `会议预算表.tex` | | `劳务发放说明表/` | 劳务费发放说明 | `劳务发放说明表.tex` | | `年度考核登记表/` | 教职工年度考核登记表 | `年度考核登记表.tex` | | `特殊事项说明表/` | 报销用特殊事项说明表 | `特殊事项说明表.tex` | | `成绩构成说明/` | 课程成绩构成说明 | `成绩构成说明.tex` | | `试卷/` | 试卷 + 参考答案与评分标准 | `试卷题型示例.tex`、`参考答案与评分标准示例.tex` | | `试卷归档封面/` | 试卷袋归档封面 | `试卷归档封面.tex` | | `试卷归档目录/` | 试卷袋归档目录 | `试卷归档目录.tex` | | `课程大纲/` | 本科生课程大纲 | `课程大纲.tex` | | `课程执行大纲/` | 课程执行大纲 | `课程执行大纲.tex` | | `课程教学日历/` | 课程教学日历 | `课程教学日历.tex` | | `教材/` | 教材、专著(成书排版) | `教材.tex` | | `科技报告/` | 科技报告、实验讲义 | `report.tex` | | `幻灯片/` | Beamer 演示文稿(16:9) | `slides.tex` | | `简历/` | 个人简历 | `简历.tex` | ## 编译 在**模板目录内**编译,不要在仓库根目录编译。 ```bash cd 课程大纲 xelatex 课程大纲.tex ``` 或用编译脚本(在仓库根目录执行): ```bash bash build.sh 课程大纲 # 编单个模板 bash build.sh all # 编全部,输出汇总 bash verify_all.sh # 检查全部:错误数 / Overfull / 页数 ``` 脚本会自动判断该跑几遍,不用手记。 ### 各模板编译遍数 | 模板 | 遍数 | 原因 | |---|---|---| | 表格类(会议预算表、劳务发放说明表、年度考核登记表、特殊事项说明表、成绩构成说明、试卷归档封面、试卷归档目录) | 1 | 无目录、无交叉引用 | | `课程大纲`、`课程执行大纲`、`课程教学日历` | 2 | 有目录与交叉引用 | | `试卷` | 2 | 有题号交叉引用 | | `幻灯片` | 2 | Beamer 需要 | | `教材`、`科技报告` | 4 | 有参考文献:`xelatex → bibtex → xelatex → xelatex` | ## 字体 所有模板的字体都来自 `fonts/`,**不依赖操作系统装了什么字体**。 ### 字体目录 ``` fonts/ ├── ouc-serif/ OUC Serif 中文宋体(正文) ├── ouc-sans/ OUC Sans 中文黑体(标题) ├── ouc-kai/ OUC Kai 中文楷体(代斜体) ├── zhuque-fangsong/ Zhuque Fangsong 中文仿宋 ├── tex-gyre-termes/ TeX Gyre Termes 西文衬线(Times 等价) ├── cochineal/ Cochineal 西文衬线(Minion 风格) ├── harmonyos-sans/ HarmonyOS Sans 幻灯片、科技报告用 └── fontawesome/ Font Awesome 简历的图标符号 ``` ### 怎么引用字体 两行固定写法,放在 `\documentclass` 之后、`\begin{document}` 之前: ```latex \documentclass[UTF8,fontset=none]{ctexart} \input{../fonts.tex} \begin{document} ``` - `fontset=none` 必须写。不写的话 ctex 会先按系统字体配一套。 - `../fonts.tex` 是**相对模板目录**的路径,所以在模板目录内编译。 - 不要在仓库根直接 `xelatex 课程大纲/课程大纲.tex`,`../` 会指错。 `fonts.tex` 可以重复引用,多个 sty 各自引用不会冲突。 ### 可用的字体命令 `\input{../fonts.tex}` 之后可以用这些命令随时切换字族: | 命令 | 效果 | 实际字体 | |---|---|---| | `\songti` | 中文宋体 | OUC Serif | | `\heiti` | 中文黑体 | OUC Sans | | `\kaiti` | 中文楷体 | OUC Kai | | `\fangsong` | 中文仿宋 | Zhuque Fangsong | | `\tnr` | 西文衬线 | TeX Gyre Termes | | `\tnrb` | 西文衬线粗体 | TeX Gyre Termes Bold | | `\hm` | 鸿蒙黑体(中文) | HarmonyOS Sans SC | | `\hmlatin` | 鸿蒙黑体(西文) | HarmonyOS Sans | | `\oucUseCochineal` | 正文西文换成 Cochineal | Cochineal | 默认正文:中文 OUC Serif + 西文 TeX Gyre Termes。 用法示例: ```latex {\heiti 这段用黑体} {\kaiti 这段用楷体} ``` ### 换正文西文字体 ```latex \input{../fonts.tex} \oucUseCochineal % 正文西文改为 Cochineal ``` 只有 `简历/` 用这个,其余模板保持 Termes。 ## 环境要求 - TeX Live 2022 或更新 - 编译引擎固定 **XeLaTeX**,不能用 pdfLaTeX 或 LuaLaTeX - 不需要装 CTeX 套装,不需要系统装中文字体 ## 新增模板 1. 建目录,放 `.tex` 主文件 + `.sty` 版式包 2. 导言区写 `\documentclass[UTF8,fontset=none]{ctexart}` + `\input{../fonts.tex}` 3. 编译确认 `bash build.sh 你的模板名` 4. 把模板加进 `verify_all.sh` 的 `TARGETS` 列表 5. 写 `README.md`,格式参考现有模板 ## 约定 - 页面 A4,唯 `幻灯片/` 为 16:9 - 表格类模板正文 12pt,`教材/` 为 10pt - 中文正文用宋体,标题用黑体 - 示例内容全部是虚构数据(虚构教师、虚构课程、统一用 `example.net` 邮箱与 `138 0000 0000` 手机号),替换成自己的内容即可