从个人目录的中文简历迁移为第 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。
中国海洋大学个人简历 LaTeX 模板
中文个人简历模板,A4 单页两栏式排版:左侧窄栏放时间与阶段,右侧宽栏放具体内容,抬头带圆形头像与联系方式图标行。
本目录的版式来自一份在用的中文简历(
awesome-source-cv系的衍生版)。字体、占位内容、头像三处都已重做,详见下文「与上游的差别」。
特性
- 字体全部取自仓库公共字体包:中文 OUC Serif(宋体)/ OUC Sans(黑体)/ OUC Kai(楷体)/ Zhuque Fangsong(仿宋),西文 TeX Gyre Termes,图标 FontAwesome —— 没有任何一个字体来自系统或 TeX Live 安装,换机器编译结果一致;
- 真粗体:标题、姓名、区块头用的都是字体自带的粗体,不是算法描边;
- 分区可拆:
section_01~section_10各自一个文件,不想要哪块就把对应\input注释掉; - 圆形头像:
\photo{2.5cm}{photo}自动裁成圆形,尺寸随参数走; - 条目化排版:论文、专利、项目、获奖等用
\emptySeparator分条,时间栏自动对齐。
环境要求
- TeX Live 2022 及以上,必须 XeLaTeX 编译;
- 不需要安装任何字体,
fonts/里有全套。
编译
在本目录下编译(不要在仓库根调用,fonts.tex 里的 Path=../fonts/ 是相对当前工作目录的):
cd 简历
xelatex 简历.tex
xelatex 简历.tex # 跑两遍:第一遍写 .aux,第二遍才能取到正确的页码与交叉引用
编译结果:3 页,日志零 error、零 Underfull、零 Overfull。嵌入字体只有 5 个,全部来自本仓库:
| 字体 | 用途 |
|---|---|
OUCSerif-Regular / OUCSerif-Bold |
中文正文与标题 |
TeXGyreTermes-Regular / -Bold |
西文正文与标题 |
FontAwesome |
联系方式行图标 |
改什么、在哪儿改
| 要改的内容 | 位置 |
|---|---|
| 姓名、职称、联系方式 | 简历.tex 的 \name / \tagline / \socialinfo |
| 头像 | 替换 photo.jpg(正方形,400×400 以上,会自动裁圆) |
| 各区块正文 | section_01_headline.tex ~ section_10_awards.tex |
| 不想显示的区块 | 在 简历.tex 里把对应 \input 注释掉 |
| 左侧时间栏宽度 | awesome-source-cv.cls 的 \setlength{\leftcolumn}{2.5cm},右侧栏宽会自动跟着算 |
| 主题色 | awesome-source-cv.cls 的 accentcolor |
与上游的差别(改动都在文件头注释里写明了原因)
1. 字体:三层依赖全部拆掉
上游那份简历的字体走三条路,每条都不能随仓库分发或不可复现:
| 上游做法 | 问题 | 本模板的处理 |
|---|---|---|
zh_cn-adobefonts_external.sty 设 Adobe 宋/黑/楷/仿 |
56 MB 商业字体,无授权不可分发 | 删掉这两个文件,改由 ../fonts.tex 提供中文字体 |
awesome-source-cv.cls 的 localFont 分支设 SourceSansPro-*(9 个 .otf) |
同上,且与仓库已有西文字体重复 | cls 里的 \setmainfont 整段删除,西文改走 ../fonts.tex 的 TeX Gyre Termes |
fontawesome.sty 用字体名找系统 FontAwesome |
机器上没装就编不过 | 改成显式 Path=../fonts/fontawesome/,字体文件已入仓库 |
删掉的两个文件里还有个隐藏问题值得记一笔:原 zh_cn-adobefonts_external.sty 里
BoldFont / ItalicFont / SmallCapsFont 全部指向 Regular 那一档 ——
等于加粗不变、斜体不变,标题层次全靠字号撑。换成真粗体后版面明显立起来了。
2. 占位:真人信息全部清空
模板必须能公开分发,所以姓名、手机、邮箱、住址、出生年月、论文题名与 DOI、专利号、
软著登记号、获奖名称全部改成 ××× / 20×× 形式。照着填即可,版式不受影响。
a.jpg / a.png(2085×2085 的真人照)换成了 PIL 生成的 400×400 中性剪影 photo.jpg。
3. 排版小修
- 左栏宽度改自适应:原来
\leftcolumn 2.5cm + \rightcolumnlength 14.8cm看着 小于版心 18 cm,但两列共 4 个\tabcolsep(≈0.85 cm)没算进去,实际 18.15 cm, 日志有Overfull 4.48pt。改成\dimexpr\linewidth-\leftcolumn-4\tabcolsep\relax由版心反算,改页边距也不用再调数字。 - 抬头去掉两处空盒:
\vspace*{0.3cm}\\和\smallskip\\会在换行前多产生一个 空 hbox(日志刷Underfull \hbox (badness 10000)),改成\\[0.3cm]/\\[\smallskipamount],间距效果不变。 \socialinfo末尾不要留\\:简历.tex里最后一行\address{...}后面加了\\同样会多一个空行。中间的\\是分行,必须保留。
写的时候容易踩的三个坑
\newExperience的参数顺序是「结束在前、开始在后」 —— 上游定义就是先印#1(结束时间)再印#5(开始时间),第一次用极易写反,写反了两栏内容会错位。- 每条后面必须跟
\emptySeparator,否则下一条会并进同一格,不换行。 - 关键词用英文逗号
,分隔(\foreach按,切分)。用中文逗号会把整串当成 一个标签,撑出一个超宽的大框。
字体换成 SmallCaps 时的坑(已在 ../fonts.tex 里解决)
\user / \resumetitle / \experience 都用了 \textsc,而中文没有小型大写字形,
不处理会每页刷 6 条 Font shape 'TU/OUCSerif(0)/m/sc' undefined。
修的时候注意:\setCJKmainfont 里加 SmallCapsFont 与本仓库的 ItalicFeatures
互斥 —— 斜体那一档带跨目录 Path,会把小型大写的字体查找带偏,无论写
*-Regular、全名、还是带 .otf 全报
The font "OUCSerif-Regular" cannot be found.。
正解在 ../fonts.tex 里用的是 LaTeX 原生的形状替换:
\DeclareFontShape{TU}{OUCSerif(0)}{m}{sc}{<->ssub * OUCSerif(0)/m/n}{}
\DeclareFontShape{TU}{OUCSerif(0)}{b}{sc}{<->ssub * OUCSerif(0)/b/n}{}
比 fontspec 的选项低一层,不受选项间相互作用影响,效果等价。
授权
LICENSE 沿用上游。字体授权见仓库根 ../fonts/README.md,全部允许免费商用与再分发。