2 Commits
Author SHA1 Message Date
laoyang 9da5a6d75b README 增加“分支与编译器版本”说明
把仓库按 TeX Live 年份组织分支的约定写进 README:
分支名是哪一年,就表示该分支可用那一年的 TeX Live 直接编译通过。
新增内容包括各分支与 TeX Live / beamer 版本对应表、分支选择方法、
这样划分的原因(beamer 3.69 起 frametitle 内部宏变更导致补丁失效,
现已加入版本自动判别),以及后续新年份的维护约定。
2026-09-21 08:15:07 +08:00
laoyang 4242969f2e 用 TeX Live 2026 重新编译并验证:beamer 3.77 下无需改动源码即可通过
- XeTeX 3.141592653-2.6-0.999998 (TeX Live 2026),beamer 2026/01/22 v3.77
- xelatex 连续三遍编译,0 错误,输出 23 页
- 与 TL2025 构建做像素级比对:23/23 页完全一致
- 仅两条无害的 Courier 字体形状警告(TU/pcr),历代版本均存在
- TL2026 的 xdvipdfmx 亦正常跨页去重,PDF 为 2.4MB
2026-09-21 02:47:10 +08:00
2 changed files with 47 additions and 0 deletions
+47
View File
@@ -31,6 +31,53 @@
3. 可以安装其他的IDE工具进行Tex文件的编写和修改,推荐使用<a href="https://code.visualstudio.com/" target="_blank">Visual Studio Code</a>。
4. 编译时,请选择XeLaTex,有时候,可能需要连续编译两次,以得到正确的页码和图表编号。
# 分支与编译器版本
本仓库按 **TeX Live 年份**组织分支,规则很简单:**分支名是哪一年,就说明该分支可以用那一年的 TeX Live 直接编译通过**
| 分支 | 对应 TeX Live | beamer 版本 | 说明 |
|------|---------------|-------------|------|
| `main` | 最新版 | 最新 | 始终指向最新的年份分支(当前等于 `2026` |
| `2026` | TeX Live 2026 | 3.77 | 无需改动源码即可编译通过 |
| `2025` | TeX Live 2025 | 3.72 | 无需改动源码即可编译通过 |
| `2024` | TeX Live 2024 | 3.71 | 无需改动源码即可编译通过 |
| `2023` | TeX Live 2023 | 3.69 | 适配 beamer 3.69 的 frametitle 变更,并修复 allcaps 选项 |
| `2022` | TeX Live 2022 | 3.66 | 原始基线,未做修改 |
## 我该用哪个分支
- **想用最新版本**:直接用 `main` 分支,并配合**最新版 TeX Live**。
- **本机已经装了某个特定年份的 TeX Live**:切到**同名的那个分支**即可。
```bash
# 例如本机是 TeX Live 2023,就用 2023 分支
git clone -b 2023 https://code.yangyq.net/laoyang/ouc-slide-latex-template.git
# 已经克隆过的仓库,可以这样切换
git checkout 2023
```
简单说:**编译器是哪一年的,就用哪一年的分支**,不需要自己去改模板代码。
## 为什么要这样分
beamer 的内部实现会随 TeX Live 版本变化,而模板中对内部宏的补丁(`\patchcmd`)会因此失效。最典型的一次是:
- **beamer 3.69TeX Live 2023** 起,`\beamer@@frametitle` 改用 `\beamer@insertframetitlecontinuation`,使得面向旧版写法的补丁匹配失败,报 `Patching original frame title failed`
- 模板现已加入**版本自动判别**(依据 `\beamer@insertframetitlecontinuation` 是否存在,判断逻辑写在文件顶层),因此 `2023` 及之后的各年份分支**不需要再改动源码**。
- `2022` 分支保留原始写法,只保证在 TeX Live 2022beamer 3.66)下编译通过。
## 维护约定
每当有新的 TeX Live 年份发布时:
1. 在新版本的 TeX Live 下,用 **XeLaTeX 编译当前的 `main`**
2. 如果编译不通过,进行修复,注意保持向后兼容,不要破坏旧年份分支;
3. 修复通过后,新建一个**以该年份命名**的分支并提交;
4. 把该年份分支**快进合并到 `main`**,让 `main` 始终是最新版本。
> 附注:不同年份的 TeX Live 生成的 PDF 在体积上可能略有差异(例如 TeX Live 2024 的 xdvipdfmx 曾一度不做跨页图像去重,导致成品偏大约 4 倍),但**页面渲染内容是一致的**,不影响使用。
# 元素介绍
## 基本信息
Tex文件的开头,是基本信息部分,可以根据需要添加`\title`{标题}、`\subtitle`{子标题}、`\author`{作者}、`\date`{\today}、`\institute`{所属机构}。
BIN
View File
Binary file not shown.