laoyang 9da5a6d75b README 增加“分支与编译器版本”说明
把仓库按 TeX Live 年份组织分支的约定写进 README:
分支名是哪一年,就表示该分支可用那一年的 TeX Live 直接编译通过。
新增内容包括各分支与 TeX Live / beamer 版本对应表、分支选择方法、
这样划分的原因(beamer 3.69 起 frametitle 内部宏变更导致补丁失效,
现已加入版本自动判别),以及后续新年份的维护约定。
2026-09-21 08:15:07 +08:00
2022-05-12 12:58:31 +08:00
2022-05-12 12:58:31 +08:00
2022-05-12 13:26:05 +08:00

中国海洋大学幻灯片LaTex模板

中国海洋大学幻灯片LaTex非官方模板。

本模板修改自HelmholtzAI模板。在原有模板基础上进行了大量修改。

模板主要使用海大公布的标准色,包括海大蓝、海大天蓝、海大红、樱缤粉、文脉棕、专金、专银。

此外,使用了大量的信息框来增加模板的活力。

文件结构

模板中的文件主要包括:

  1. slide.tex:主文件,编写的演示文稿内容主要存放在该文件当中。
  2. oucslide.sty:模板的样式文件。
  3. font:字体文件夹,所有编译需要用到的字体。默认字体使用的是华为鸿蒙字体。
  4. theme:主题文件夹。
    1. beamercolorthemeOUCSlide.sty:颜色定义文件。
    2. beamerfontthemeOUCSlide.sty:字体定义文件。
    3. beamerinnerthemeOUCSlide.sty:内部元素定义文件。
    4. beamerouterthemeOUCSlide.sty:整体布局定义文件。
    5. beamerthemeOUCSlide.sty:主题定义文件。
  5. logos:模板中使用的Logo存放文件夹。
  6. figs:插入的图片文件夹。
  7. fontawesome.pdf:图标使用说明文件。

使用方法

  1. 从git上clone项目到本地。目前,共有多个git库供选择,分别是:GithubGiteeGitlab阿里云Code。这些库都和源库保持一致和同步,从理论上来讲,使用任何一个库都可以。
  2. 安装Tex编译器,推荐使用TexLive,安装成功后,可以使用自带的TeXworks打开目录下的tex文件进行编译。
  3. 可以安装其他的IDE工具进行Tex文件的编写和修改,推荐使用Visual Studio Code
  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:切到同名的那个分支即可。
# 例如本机是 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{所属机构}。

\newcommand{\last}{敬请批评指正!} 的作用是为了制作最后一页致谢页面而单独设置的,可以修改为任何致谢语句。

特殊页面

模板中有三个特殊的页面,分别是:标题页(首页)、目录页和结尾页。这三个页面由于其特殊性,不能使用frame的常规模板,因此,为它们创建了三个命令进行生成:

\maketitle
\makeoutline
\makelast

使用者三个命令后,将会自动创建首页、目录页和结尾页。

首页和结尾页,使用的是基本信息中的数据,而目录页的内容,将根据\section进行填充。

使用分节

本模板使用分节进行整体规划,章节共三级,对应的关键字分别是:

\section
\subsection
\subsubsection

其中,\section 会有单独的页面进行显示。如下图所示。而且,section还将会出现在目录页面中。 section \subsection\subsubsection都没有单独的页面相对应,他们会出现在对应章节的frame中,作为标题进行呈现,并且加入了自动编号的效果。需要说明的是,\subsection是必须的,而 \subsubsection 却可有可无。他们呈现出的最终的效果,如下图所示。 subsection 需要注意的是,虽然frame的标题,是由subsection和subsubsection自动生成的,但是frame中的frametitle仍然是必须的,否则没有frametitle这个元素,标题无法自动填充。

使用Frame

章节确定好后,就可以增加Frame来编写幻灯片。使用代码:

\begin{frame}
    \frametitle{测试}
\end{frame}

就可以插入一张幻灯片。

需要注意的是:如果幻灯片中使用了代码块,则需要加入关键字fragile。这样,引入的代码才能保持它们原有的样子,如下所示:

\begin{frame}[fragile]
    \frametitle{测试}
\end{frame}

当然,也可以使用定义的特殊的frame模板来达到这种效果。

\begin{fragileframe}
    \frametitle{测试}
\end{fragileframe}

他们的效果是一样的。

字体

模板使用的默认字体是华为鸿蒙字体 (HarmonyOS Sans)。该字体可以免费商用。

如果对字体不满意,可下载其他字体,放入fonts文件夹,并在beamerfontthemeOUCSlide.sty文件中修改。

推荐的字体包括:思源黑体阿里普惠字体OPPO字体小米字体。这些字体基本上都可以免费商用,并且效果都很不错。关于他们是否能够继续免费商用的政策,请查阅其官方网站以得到最准确的信息。

颜色

根据海大公布的标准颜色,定义了相关颜色,主要包括海大蓝、海大天蓝、海大红、樱缤粉、文脉棕、专金、专银。其中文名称和代码如下表所示。

当然,也可以使用LaTex自带的颜色,例如white、black等。

名称 中文名
oucblue 海大蓝
ouclightblue 海大天蓝
oucred 海大红
ouccherry 樱缤粉
oucbrown 文脉棕
oucgolden 专金
oucsilver 专银

颜色等级

为了显示更丰富的色彩,定义的海大标准色,每一种颜色,都有十个等级,等级越低,颜色越浅。例如:对于海大蓝,其等级颜色从oucblue90-oucblue10不等,分成10个等级。

信息框

信息框使用边框的形式,提升幻灯片的表现力。

主要的信息框包括:列表框(vcolorbox)、提示框(noteboximportantbox)、信息框(titlebox)、要点框(pointbox)、块(blockexampleblockalertblock)、标题框(headbox)和文本框(textbox)。它们的效果,如下图所示。

列表框 提示框 信息框 要点框 块 标题框和文本框

代码

模板可以插入代码块,使用lstlisting即可。

公式

模板中可以直接插入公式,和LaTex中没有什么区别。

脚注

可以在任何地方使用脚注。即便是在各种信息框中也可以。

S
Description
中国海洋大学幻灯片LaTex模板
Readme BSD-3-Clause
54 MiB
Languages
TeX 100%