laoyang
|
f87d763602
|
重写全部 README,只保留使用说明
17 个 README 统一改成使用说明书,去掉来源、踩坑、需求过程等内容。
只保留:
- 怎么编译、跑几遍
- 文件结构
- 要改哪些参数(逐项列出宏名与含义)
- 用到的命令(表格)
- 版式参数
删除:
- 原文件来源、抽取过程
- 踩坑记录、最小复现、实测数据
- 用户需求、工单号、历史沿革
- 改造前后对比
行数 4185 → 2261。
全库 16/16 编译通过。
|
2026-11-01 08:52:54 +08:00 |
|
laoyang
|
389ddf51f0
|
README 引号统一为中文引号 #15
|
2026-10-27 15:05:33 +08:00 |
|
laoyang
|
ecfbcb8c67
|
简历软著/转化/教研改为全自动统计,README 补使用说明 #15
新增 cvlist 环境:进入环境后每个 \item 自动 +1,条目里一个标记都不用写。
三节各只改两行(itemize → cvlist{类别}),删掉全部 15 处 \cvmark。
\begin{cvlist}{软著}
\item 某某系统. 2024SR9999901. ...
\end{cvlist}
概述:登记软件著作权 \cvnum{软著} 项
实测:加 1 条 → 概述自动 5→6;删 2 条 → 自动 5→3;还原 → 回 5。
版面与基线逐行完全一致(66/75/34 行)——cvlist 内部就是普通 itemize。
普通 itemize 不受影响(实测 3 条子项未被误计)。
专利、科研项目仍用逐条 \cvmark:它们一条要算两个类别
(专利+第一发明人、科研项目+主持/负责),cvlist 一次只能管一类。
README 新增「先回答一个最常问的问题:它是全自动的吗?」用表格直接回答
三种写法的差别,并补「全自动写法」「半自动写法」「加一个全新的类别」
三个小节,含可直接抄的代码。
踩坑:\cvmark 内部用 \detokenize 处理类别名,传参前必须 \expandafter
展开 \cv@listcat,否则写进 .cvnum 的是字面串 "\cv@listcat"。
验证:0 error / 0 Overfull / 0 Underfull,3 页;全库回归与基线一致。
|
2026-10-27 15:04:48 +08:00 |
|
laoyang
|
eb3b53946c
|
简历概述的成果数字改为自动统计(列几条算几条) #14
概述原来手写「论文 40 余篇、专利 20 余项」,每次增删条目都要回头改。
改为正文标记、概述取数:
\item ...论文... \cvtagcount{SCI} % 显示 SCI 并计数
\item ...软著... \cvmark{软著} % 只计数
概述:论文 \cvnum*{SCI,EI,核心} 篇(SCI \cvnum{SCI} 篇)
共注册 11 类:SCI/EI/核心/专利/第一发明人/软著/科研项目/主持/负责/转化/教研。
关键技术:不用 aux,改独立数据文件 \jobname.cvnum。
中文键经 aux 往返后 \ifcsname 全部失效(xeCJK 把汉字设为活动字符,
键的 token 形态不一致;ASCII 键正常);独立文件里中文键完全正常。
累加与显示分离(cvacc@ 每遍从 0 起 / cvnum@ 读自上一遍),
否则概述在正文之前会让上一遍的值被本遍叠加,数字翻倍。
踩坑:\cvmark 不能放 \experience 的关键词参数(会被 \foreach 拆开,
报 Misplaced \omit),必须放描述参数内;也不能放 longtable 单元格之外。
验证:0 error / 0 Overfull / 0 Underfull,3 页;加标记后版面与基线
逐行一致;连续 5 次编译数字稳定;增删条目后数字自动跟随。
⚠️ 口径变化:自动统计只数列出来的条目。示例原来写「40 余篇」但正文
只列 9 篇代表作,改成自动后变「9 篇」。README 已写明这两种口径的区别。
项目总经费仍手填(\experience 无经费字段)。
|
2026-10-27 14:56:34 +08:00 |
|
laoyang
|
8e3017f359
|
简历左上角加中国海洋大学校徽(可选,默认不印) #13
新增 \cvlogo[<文件名>]{<宽度>},默认不调用、不出现,不影响现有版面。
- cls:导言区只登记参数,真正画图挪到 \makecvheader 开头的 \@makecvlogo,
否则导言区产生内容报 Missing \begin{document}
- 定位用 tikzpicture[remember picture, overlay] + current page.north west,
距纸左 10mm / 距纸顶 6mm(相对纸边,不随页边距变)
- 距顶不照搬科技报告的 20mm:简历页边距 15mm、姓名墨迹顶 17.2mm,会压到姓名
- tikzpicture 即使全 overlay 仍占一行 17pt,用 \vspace*{-17pt} 抵消;
\smash / \hbox to 0pt / \vbox to 0pt 三种写法实测都消不掉
- 尺寸定 28mm(横式 2400:605 ⇒ 高 7.06mm),是 15mm 边距下的上限附近
实测:logo 28.00×7.06mm,x=10.07mm、y=6.07mm,下沿 13.1mm;
姓名 y 保持 48.8pt 未位移;3 页 0 error / 0 Overfull / 0 Underfull / 0 个 ×。
体积 158KB → 573KB(内嵌 2400px 原图,实际只用 28mm≈660px)。
|
2026-10-27 14:25:27 +08:00 |
|
laoyang
|
69da5b41a6
|
简历排版修正:项目经验整块右移、西文换 Cochineal、课程执行大纲漏网 × #12
一、项目经验整块右移(简历/awesome-source-cv.cls)
\rightcolumnlength 算早了:geometry 的 1.5cm 边距要到导言区结束才生效,
cls 里那句 \setlength 读到 article 默认 \textwidth=345pt,算出 249.87pt,
比应有的 417.02pt 少 167.15pt。longtable 把窄表居中排,整块右移 83.6pt。
修法:计算挪进 \AtBeginDocument 并减去 | 竖线的 \arrayrulewidth;
R 列由 >{\hfill}m{2.5cm} 改为 >{\raggedright\arraybackslash}p{2.5cm}。
日期左边缘 145.1 -> 48.5pt,与其余章节严格对齐。
这类错误零 error 零 warning,只能量 PDF 坐标才能发现。
二、西文换 Cochineal(fonts/cochineal/ + fonts.tex + 简历 cls)
中文思源宋体配 Termes 时西文笔画偏细,中英混排会「陷进去」。
Cochineal 宽 225.42pt vs Termes 229.68pt,只窄 1.9%,断行位置基本不动;
Pagella/XCharter 宽 7~11%,会把全库断行推着变,故不选。
字体 920KB 入 fonts/cochineal/(SIL OFL 1.1,附 OFL.txt),
fonts.tex 新增 \oucUseCochineal 开关,只简历调用,其余 10 个模板不受影响。
三、换字体后暴露的真实缺陷
西文窄 1.9% 让断点整体前移,ICIEA 那条论文冲出 88.49pt(文字顶到纸边)。
根因是中文紧跟英文的位置不是断开点,整串被当长单词。
加 \emergencystretch=3em 解决。
四、课程执行大纲漏网占位符(ouccourse.sty)
××学部××学院 硬编码在 \ccschool 里,#11 只扫了 .tex 没扫 .sty 所以漏了。
拆成 \ccdepartment / \cccollege 两个名称宏,默认「信息科学与工程学部 /
计算机科学与技术学院」。重编后全文 × 归零。
「代码库 PDF 没更新」经核实不成立:本地/远程 HEAD 均为 8984b93,
从服务器下载 8 个 PDF 逐字节比对全部一致,简历.pdf 3 页 0 个 ×。
验证:简历 3 页 0 error/0 Overfull/0 Underfull;全库 12 项编译回归与基线一致。
|
2026-10-27 13:13:54 +08:00 |
|
laoyang
|
8984b93ee7
|
模板内容填充:全库 × 占位换成完整虚构示例,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 正文 × 清零;真实信息零泄漏。
|
2026-10-27 12:50:02 +08:00 |
|
laoyang
|
cc0dfb7257
|
新增个人简历模板(简历/),字体全部换成仓库自带的 #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。
|
2026-10-27 11:17:24 +08:00 |
|