Compare commits
6
Commits
4aaf14bc63
..
2025
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
8d8ddabe31 | ||
|
|
e3f2384e99 | ||
|
|
4bdc1b83ab | ||
|
|
d69eeb3f11 | ||
|
|
e4ba88242c | ||
|
|
999d801896 |
BIN
Binary file not shown.
@@ -109,6 +109,11 @@
|
|||||||
\providecommand{\addfontfeature}[1]{} % defined only if latex or pdflatex is used
|
\providecommand{\addfontfeature}[1]{} % defined only if latex or pdflatex is used
|
||||||
\providecommand{\textls}[2][]{#2}{} % defined only if microtype is loaded
|
\providecommand{\textls}[2][]{#2}{} % defined only if microtype is loaded
|
||||||
|
|
||||||
|
%% \MakeTextUppercase 原本由 textcase 宏包提供,但本模板并未加载该宏包,
|
||||||
|
%% 导致 title/subtitle/part/frametitle 的 allcaps 选项报 Undefined control sequence。
|
||||||
|
%% 这里在未定义时退回到 LaTeX 内核的 \MakeUppercase(新版内核语义与 textcase 一致)。
|
||||||
|
\@ifundefined{MakeTextUppercase}{\let\MakeTextUppercase\MakeUppercase}{}
|
||||||
|
|
||||||
% 定义的一些其他命令
|
% 定义的一些其他命令
|
||||||
\def\beameroucslide@titleformat#1{#1}
|
\def\beameroucslide@titleformat#1{#1}
|
||||||
\def\beameroucslide@subtitleformat#1{#1}
|
\def\beameroucslide@subtitleformat#1{#1}
|
||||||
@@ -205,7 +210,25 @@
|
|||||||
{\def\insertpart{{\beameroucslide@partformatspacingb{LetterSpace=15.0}\beameroucslide@partformatcaps{\beameroucslide@partformatspacinga[120]{\expandafter\hyperlink\partlink}}}}}%
|
{\def\insertpart{{\beameroucslide@partformatspacingb{LetterSpace=15.0}\beameroucslide@partformatcaps{\beameroucslide@partformatspacinga[120]{\expandafter\hyperlink\partlink}}}}}%
|
||||||
{}%
|
{}%
|
||||||
{\PackageError{beameroucslide}{Patching original part failed}\@ehc}
|
{\PackageError{beameroucslide}{Patching original part failed}\@ehc}
|
||||||
\patchcmd{\beamer@@frametitle}
|
% beamer 3.69(TeX Live 2023)起 \beamer@@frametitle 的定义发生了变化:
|
||||||
|
% 用 \beamer@insertframetitlecontinuation 取代了 \usebeamertemplate*{frametitle continuation}。
|
||||||
|
% 因此这里按 beamer 版本分别处理,保证在 TeX Live 2022 与 2023 下都能编译通过。
|
||||||
|
% 注意:判断必须写在文件顶层(不能把 \patchcmd 嵌进 \@ifundefined 等宏的参数里),
|
||||||
|
% 否则 \patchcmd 的搜索串会被改写而导致补丁失败。
|
||||||
|
\ifcsname beamer@insertframetitlecontinuation\endcsname
|
||||||
|
% 新版 beamer(TeX Live 2023 及以后):按新定义重写,并加入标题格式控制
|
||||||
|
\long\def\beamer@@frametitle[#1]#2{%
|
||||||
|
\ifblank{#2}{}{%
|
||||||
|
\gdef\insertframetitle{{\beameroucslide@frametitleformatcaps{#2}%
|
||||||
|
\ifnum\beamer@autobreakcount>0\relax{}\space%
|
||||||
|
\beamer@insertframetitlecontinuation\fi}}%
|
||||||
|
\gdef\beamer@frametitle{#2}%
|
||||||
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
|
}%
|
||||||
|
}%
|
||||||
|
\else
|
||||||
|
% 旧版 beamer(TeX Live 2022 及以前):沿用原有的补丁方式
|
||||||
|
\patchcmd{\beamer@@frametitle}
|
||||||
{{%
|
{{%
|
||||||
\gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space%
|
\gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space%
|
||||||
\usebeamertemplate*{frametitle continuation}\fi}}%
|
\usebeamertemplate*{frametitle continuation}\fi}}%
|
||||||
@@ -220,5 +243,6 @@
|
|||||||
\gdef\beamer@shortframetitle{#1}%
|
\gdef\beamer@shortframetitle{#1}%
|
||||||
}}
|
}}
|
||||||
{}
|
{}
|
||||||
{\PackageError{beameroucslide}{Patching original frame title failed}\@ehc}
|
{\PackageError{beameroucslide}{Patching original frame title failed}\@ehc}%
|
||||||
|
\fi
|
||||||
\makeatother
|
\makeatother
|
||||||
|
|||||||
Reference in New Issue
Block a user