新增个人简历模板(简历/),字体全部换成仓库自带的 #10

从个人目录的中文简历迁移为第 11 个模板,三处字体重做:

1) 字体三层依赖全部拆掉
   - 删 zh_cn-adobefonts_external/internal.sty(Adobe 宋/黑/楷/仿,56 MB,
     商业授权不可分发),中文字体改由 ../fonts.tex 提供
   - awesome-source-cv.cls 的 localFont 分支(SourceSansPro 9 个 .otf)
     整段删除,西文改走 ../fonts.tex 的 TeX Gyre Termes
   - fontawesome.sty 原按字体名找系统 FontAwesome,改成显式
     Path=../fonts/fontawesome/,并把 FontAwesome.otf 收进仓库

   顺带修掉一个设计缺陷:原 adobefonts 里 BoldFont/ItalicFont/SmallCapsFont
   全部指向 Regular,等于加粗不变、斜体不变。现用字体自带的真粗体。

2) 占位化:真实姓名/手机/邮箱/住址/出生年月/论文题名与 DOI/专利号/
   软著号/33 条获奖全部改为 ××× / 20××;真人照 a.jpg/a.png 换成
   PIL 生成的 400×400 中性剪影 photo.jpg

3) 排版修正
   - 左栏宽度改为 \dimexpr\linewidth-\leftcolumn-4\tabcolsep\relax 自适应,
     修掉长表格 Overfull 4.48pt(原来没把 4 个 \tabcolsep 算进去)
   - 抬头两处 \vspace*{...}\\、\smallskip\\ 改为 \\[...],
     修掉 Underfull \hbox (badness 10000)
   - \socialinfo 末尾多余的 \\ 去掉

fonts.tex 的改动(全库共享):\textsc 用的 sc 档改用
\DeclareFontShape{TU}{OUCSerif(0)}{m}{sc}{<->ssub * OUCSerif(0)/m/n}{}
做形状替换,而不是 SmallCapsFont 选项 —— 后者与本文件 ItalicFeatures 的
跨目录 Path 互斥,任何写法都报 The font "OUCSerif-Regular" cannot be found.

回归:11 个模板全部零 error 编译通过;科技报告/试卷/课程执行大纲
文本与改动前逐字一致,4 个既有 boxwarn 为改动前基线,未新增。

编译:cd 简历 && xelatex 简历.tex 跑两遍,3 页,零 error/Underfull/Overfull。
嵌入字体仅 OUCSerif-{Regular,Bold}、TeXGyreTermes-{Regular,Bold}、FontAwesome。
This commit is contained in:
2026-10-27 11:17:24 +08:00
parent 95afc9caa6
commit cc0dfb7257
28 changed files with 3566 additions and 5 deletions
+22 -2
View File
@@ -1,6 +1,6 @@
# fonts/ —— 模板库公共字体目录
本目录是**中国海洋大学 LaTeX 模板库唯一的一份字体来源**。仓库里七个模板全部通过
本目录是**中国海洋大学 LaTeX 模板库唯一的一份字体来源**。仓库里十一个模板全部通过
根目录的 [`../fonts.tex`](../fonts.tex) 取字体,不再有任何模板自带字体、也不依赖
操作系统里装了什么字体。换一台机器、换一个操作系统(Windows / macOS / Linux /
Overleaf),编译出来的样子都一样。
@@ -12,7 +12,8 @@ fonts/
├── ouc-kai/ OUC Kai 楷体 2 个,7.0 MB
├── zhuque-fangsong/ Zhuque Fangsong 仿宋 1 个,8.4 MB
├── tex-gyre-termes/ TeX Gyre Termes 西文 Times 等价 4 个,550 KB
└── harmonyos-sans/ HarmonyOS Sans 鸿蒙(中英各一档) 6 个,16 MB
├── harmonyos-sans/ HarmonyOS Sans 鸿蒙(中英各一档) 6 个,16 MB
└── fontawesome/ FontAwesome 简历模板的图标符号 1 个,130 KB
```
合计约 **49 MB**(改造前是 141 MB:幻灯片 49 MB + 科技报告 92 MB 各自带一份,
@@ -104,6 +105,25 @@ fonts/
> 不是 `族名-字重` 格式。所以在 fontspec 里不能写 `*-Regular` 通配,
> 必须显式给完整文件名。
### 5. FontAwesome —— 简历模板的图标符号
| | |
|---|---|
| 上游 | Font Awesome 4.x(原项目 Fonticons, Inc.) |
| 授权 | SIL OFL 1.1(字体本身)/ CC BY 4.0(图标设计) |
| 保留原因 | `简历/` 模板的联系方式行用 `\smartphone` / `\email` / `\address` 等命令,每个前缀都要印一个图标 |
| 版本 | 与 TeX Live 2022 内置的那份逐字节相同(md5 `9f6ff7d7cfd6f76d7a9c242bdd48c144`) |
只有 `FontAwesome.otf` 一个文件(130 KB)。TeX Live 里本来就带这份字体,之所以
还是拷进仓库,是为了守住「字体单一来源」这个约定 —— 否则 `简历/` 就成了唯一一个
字体来自 TeX Live 安装的模板,换一台没装 fontawesome 宏包用字体的机器就编不出来。
> ⚠️ 引用它的不是 `fonts.tex`,而是 `简历/fontawesome.sty` 里的
> `\newfontfamily{\FA}[Path=../fonts/fontawesome/,Extension=.otf]{FontAwesome}`。
> 原因:`\FA` 是在 `\RequirePackage{fontawesome}` 时就被定义好的(早于 `.cls`
> 后面所有语句),`awesome-source-cv.cls` 里再声明一次会报 `Font \FA already
> defined`;所以只能改 `fontawesome.sty` 本体。
---
## 三、字体是怎么被调用的
Binary file not shown.