初始化

This commit is contained in:
laoyang
2022-05-12 12:58:31 +08:00
parent bf99ef7b8f
commit 05607d8255
34 changed files with 1198 additions and 85 deletions
+124
View File
@@ -0,0 +1,124 @@
%% 版本:1.0
%% 作者:杨永全
%% 本文件的主要作用,是为了定义海大标准颜色
%% 完成时间:2022-05-09
\RequirePackage{xcolor}
% OUC BLue 海大蓝 默认颜色
\definecolor{oucblue}{RGB}{0, 64, 152}
\colorlet{oucblue10}{oucblue!10!white}
\colorlet{oucblue20}{oucblue!20!white}
\colorlet{oucblue30}{oucblue!30!white}
\colorlet{oucblue40}{oucblue!40!white}
\colorlet{oucblue50}{oucblue!50!white}
\colorlet{oucblue60}{oucblue!60!white}
\colorlet{oucblue70}{oucblue!70!white}
\colorlet{oucblue80}{oucblue!80!white}
\colorlet{oucblue90}{oucblue!90!white}
% OUC Light Blue 海大天蓝
\definecolor{ouclightblue}{RGB}{0, 160, 233}
\colorlet{ouclightblue10}{ouclightblue!10!white}
\colorlet{ouclightblue20}{ouclightblue!20!white}
\colorlet{ouclightblue30}{ouclightblue!30!white}
\colorlet{ouclightblue40}{ouclightblue!40!white}
\colorlet{ouclightblue50}{ouclightblue!50!white}
\colorlet{ouclightblue60}{ouclightblue!60!white}
\colorlet{ouclightblue70}{ouclightblue!70!white}
\colorlet{ouclightblue80}{ouclightblue!80!white}
\colorlet{ouclightblue90}{ouclightblue!90!white}
% OUC Red 海大红
\definecolor{oucred}{RGB}{200, 21, 40}
\colorlet{oucred10}{oucred!10!white}
\colorlet{oucred20}{oucred!20!white}
\colorlet{oucred30}{oucred!30!white}
\colorlet{oucred40}{oucred!40!white}
\colorlet{oucred50}{oucred!50!white}
\colorlet{oucred60}{oucred!60!white}
\colorlet{oucred70}{oucred!70!white}
\colorlet{oucred80}{oucred!80!white}
\colorlet{oucred90}{oucred!90!white}
%OUC Cherry 樱缤粉
\definecolor{ouccherry}{RGB}{249, 210, 212}
\colorlet{ouccherry10}{ouccherry!10!white}
\colorlet{ouccherry20}{ouccherry!20!white}
\colorlet{ouccherry30}{ouccherry!30!white}
\colorlet{ouccherry40}{ouccherry!40!white}
\colorlet{ouccherry50}{ouccherry!50!white}
\colorlet{ouccherry60}{ouccherry!60!white}
\colorlet{ouccherry70}{ouccherry!70!white}
\colorlet{ouccherry80}{ouccherry!80!white}
\colorlet{ouccherry90}{ouccherry!90!white}
%OUC Brown 文脉棕
\definecolor{oucbrown}{RGB}{121, 79, 47}
\colorlet{oucbrown10}{oucbrown!10!white}
\colorlet{oucbrown20}{oucbrown!20!white}
\colorlet{oucbrown30}{oucbrown!30!white}
\colorlet{oucbrown40}{oucbrown!40!white}
\colorlet{oucbrown50}{oucbrown!50!white}
\colorlet{oucbrown60}{oucbrown!60!white}
\colorlet{oucbrown70}{oucbrown!70!white}
\colorlet{oucbrown80}{oucbrown!80!white}
\colorlet{oucbrown90}{oucbrown!90!white}
%OUC Golden 专金
\definecolor{oucgolden}{RGB}{204, 173, 105}
\colorlet{oucgolden10}{oucgolden!10!white}
\colorlet{oucgolden20}{oucgolden!20!white}
\colorlet{oucgolden30}{oucgolden!30!white}
\colorlet{oucgolden40}{oucgolden!40!white}
\colorlet{oucgolden50}{oucgolden!50!white}
\colorlet{oucgolden60}{oucgolden!60!white}
\colorlet{oucgolden70}{oucgolden!70!white}
\colorlet{oucgolden80}{oucgolden!80!white}
\colorlet{oucgolden90}{oucgolden!90!white}
% OUC Silver 专银
\definecolor{oucsilver}{RGB}{207, 208, 208}
\colorlet{oucsilver10}{oucsilver!10!white}
\colorlet{oucsilver20}{oucsilver!20!white}
\colorlet{oucsilver30}{oucsilver!30!white}
\colorlet{oucsilver40}{oucsilver!40!white}
\colorlet{oucsilver50}{oucsilver!50!white}
\colorlet{oucsilver60}{oucsilver!60!white}
\colorlet{oucsilver70}{oucsilver!70!white}
\colorlet{oucsilver80}{oucsilver!80!white}
\colorlet{oucsilver90}{oucsilver!90!white}
%代码注释的颜色
\definecolor{mygreen}{rgb}{0,0.6,0}
\mode<presentation>
% 定义元素基本颜色
\setbeamercolor{structure}{fg=oucblue, bg=}%主颜色。如果没有其他定义,则显示此颜色。
\setbeamercolor{palette primary}{use=structure, fg=oucblue, bg=}
\setbeamercolor{item}{fg=oucblue70}%item的颜色,是70%的海大蓝。
\setbeamercolor{item projected}{fg=oucblue70}
\setbeamercolor{enumerate item}{fg=black, bg=}
\setbeamercolor{enumerate subitem}{fg=black, bg=}
\setbeamercolor{enumerate subsubitem}{fg=black, bg=}
%默认的标题、副标题、作者、单位、日期,都是白色
\setbeamercolor{title}{fg=white,bg=}
\setbeamercolor{subtitle}{fg=white,bg=}
\setbeamercolor{author}{fg=white,bg=}
\setbeamercolor{date}{fg=white,bg=}
%默认的block,颜色是海大蓝
\setbeamercolor{block title}{bg=oucblue,fg=white}
\setbeamercolor{block body}{bg=oucblue10}
%example block的颜色,是海大灰
\setbeamercolor{block title example}{bg=oucsilver,fg=white}
\setbeamercolor{block body example}{bg=oucsilver10}
%提示block,用的是海大红
\setbeamercolor{block title alerted}{bg=oucred,fg=white}
\setbeamercolor{block body alerted}{bg=oucred10}
+224
View File
@@ -0,0 +1,224 @@
%!TEX program = xelatex
%% 版本:1.0
%% 作者:杨永全
%% 本文件的主要作用,是定义各种元素的字体
%% 完成日期:2022-05-09
\usepackage[UTF8]{ctex}
%\usepackage{xeCJK}
%字体
%设置英文字体 鸿蒙字体
\setmainfont[
Path=fonts/,
BoldFont=HarmonyOS_Sans_Bold.ttf,
ItalicFont=HarmonyOS_Sans_Regular_Italic.ttf,
BoldItalicFont=HarmonyOS_Sans_Bold_Italic.ttf,
]{HarmonyOS_Sans_Regular.ttf}
\setsansfont[
Path=fonts/,
BoldFont=HarmonyOS_Sans_Bold.ttf,
ItalicFont=HarmonyOS_Sans_Regular_Italic.ttf,
BoldItalicFont=HarmonyOS_Sans_Bold_Italic.ttf,
]{HarmonyOS_Sans_Regular.ttf}
\setmonofont[
Path=fonts/
]{HarmonyOS_Sans_Regular.ttf}
%设置中文字体 鸿蒙字体
\setCJKmainfont[
Path=fonts/,
BoldFont=HarmonyOS_Sans_SC_Bold.ttf,
ItalicFont=HarmonyOS_Sans_SC_Regular.ttf,
BoldItalicFont=HarmonyOS_Sans_SC_Bold.ttf
]{HarmonyOS_Sans_SC_Regular.ttf}
\setCJKsansfont[
Path=fonts/,
BoldFont=HarmonyOS_Sans_SC_Bold.ttf,
ItalicFont=HarmonyOS_Sans_SC_Regular.ttf,
BoldItalicFont=HarmonyOS_Sans_SC_Bold.ttf
]{HarmonyOS_Sans_SC_Regular.ttf}
\setCJKmonofont[
Path=fonts/
]{HarmonyOS_Sans_SC_Regular.ttf}
\mode<presentation>
\setbeamerfont{sectiontitle}{size*={18pt}{20pt},series=\bfseries} % section标题字体大小
\setbeamerfont{title}{size*={15pt}{16pt},series=\bfseries} % 标题字体大小
\setbeamerfont{subtitle short}{size*={11pt}{12pt},series=\mdseries} % 副标题 短的 字体大小
\setbeamerfont{subtitle long}{size*={9pt}{9pt},series=\mdseries} % 副标题 长的 字体大小
\setbeamerfont*{subtitle}{parent=subtitle long} % 使用父标题
\setbeamerfont*{subtitle}{parent=subtitle short} % 使用父标题
%\setbeamerfont{normal text}{size*={8pt}{9pt}} % 14pt, baselineskip 18pt
\setbeamerfont{footline}{size*={6pt}{7pt}} %页脚文字大小
%\setbeamerfont{frametitle}{size*={16pt}{16pt},series=\bfseries} %30pt, baselineskip 36pt
\setbeamerfont{framesubtitle}{size*={10pt}{11pt},series=\mdseries} % 普通页面,副标题的字体大小
% 特殊文本域的字体设置
\setbeamerfont{caption}{size=\small}
\setbeamerfont{caption name}{parent={structure,caption}}
\setbeamerfont{date}{size*={10pt}{10pt}}
\setbeamerfont{footline}{parent={tiny structure}}
\setbeamerfont{headline}{parent={tiny structure}}
\setbeamerfont{institute}{size=\footnotesize, series=\itshape}
\setbeamerfont{navigation symbols}{size*={7pt}{8pt}}
\setbeamerfont{section in toc}{parent=structure}
\setbeamerfont{section in toc shaded}{parent=section in toc}
% 列表
\setbeamerfont{item}{parent=structure}
\setbeamerfont{subitem}{parent=item}
\setbeamerfont{subsubitem}{parent=subitem}
\setbeamerfont{item projected}{size=\tiny, parent={item, projected text}}
\setbeamerfont{subitem projected}{parent=item projected}
\setbeamerfont{subsubitem projected}{parent=subitem projected}
\setbeamerfont{description item}{parent=item}
\setbeamerfont{enumerate item}{parent=item}
\setbeamerfont{enumerate subitem}{parent=subitem}
\setbeamerfont{enumerate subsubitem}{parent=subsubitem}
\setbeamerfont{itemize/enumerate body}{}
\setbeamerfont{itemize/enumerate subbody}{size=\small}
\setbeamerfont{itemize/enumerate subsubbody}{size=\footnotesize}
\setbeamerfont{itemize item}{parent=item}
\setbeamerfont{itemize subitem}{parent=subitem}
\setbeamerfont{itemize subsubitem}{parent=subsubitem}
\makeatletter
%% 字母间距
\providecommand{\emptydummyb}[1]{} % eats argument of \uppercase() and and \addfontfeature{}
\providecommand{\emptydummya}[2][]{#2}{} % eats optional argument of textls and forwards #2 argument
\providecommand{\addfontfeature}[1]{} % defined only if latex or pdflatex is used
\providecommand{\textls}[2][]{#2}{} % defined only if microtype is loaded
% 定义的一些其他命令
\def\beameroucslide@titleformat#1{#1}
\def\beameroucslide@subtitleformat#1{#1}
\def\beameroucslide@partformat#1{#1}
\def\beameroucslide@frametitleformat#1{#1}
%% 标题文字定义
\pgfkeys{
/beameroucslide/font/title/.cd,
.is choice,
.default=regular,
regular/.code={%
\let\beameroucslide@titleformatcaps\emptydummya%
\let\beameroucslide@titleformatspacinga\emptydummya%
\let\beameroucslide@titleformatspacingb\emptydummyb%
},
allcaps/.code={%
\let\beameroucslide@titleformatcaps\MakeTextUppercase%
\let\beameroucslide@titleformatspacinga\emptydummya%
\let\beameroucslide@titleformatspacingb\emptydummyb%
},
}
%% 副标题文字定义
\pgfkeys{
/beameroucslide/font/subtitle/.cd,
.is choice,
.default=allcaps,
regular/.code={%
\let\beameroucslide@subtitleformatcaps\emptydummya%
\let\beameroucslide@subtitleformatspacinga\emptydummya%
\let\beameroucslide@subtitleformatspacingb\emptydummyb%
\setbeamerfont{subtitle long}{size*={9pt}{11pt},series=\bfseries} % 18pt, baselineskip 22pt
},
allcaps/.code={%
\let\beameroucslide@subtitleformatcaps\MakeTextUppercase%
\let\beameroucslide@subtitleformatspacinga\emptydummya%
\let\beameroucslide@subtitleformatspacingb\emptydummyb%
\setbeamerfont{title}{size*={16pt}{16pt},series=\bfseries} % 30pt, baselineskip 36pt%
},
}
%% 普通页面文字设置
\pgfkeys{
/beameroucslide/font/frametitle/.cd,
.is choice,
.default=allcaps,
regular/.code={%
\let\beameroucslide@frametitleformatcaps\emptydummya%
\let\beameroucslide@frametitleformatspacinga\emptydummya%
\let\beameroucslide@frametitleformatspacingb\emptydummyb%
\setbeamerfont{frametitle}{size*={14pt}{18pt},series=\bfseries} % 32pt, baselineskip 36pt%
},
allcaps/.code={%
\let\beameroucslide@frametitleformatcaps\MakeTextUppercase%
\let\beameroucslide@frametitleformatspacinga\emptydummya%
\let\beameroucslide@frametitleformatspacingb\emptydummyb%
\setbeamerfont{frametitle}{size*={14pt}{18pt},series=\bfseries} % 32pt, baselineskip 36pt%
},
}
%% 段落文字设置
\pgfkeys{
/beameroucslide/font/part/.cd,
.is choice,
.default=allcaps,
regular/.code={%
\let\beameroucslide@partformatcaps\emptydummya%
\let\beameroucslide@partformatspacinga\emptydummya%
\let\beameroucslide@partformatspacingb\emptydummyb%
\setbeamerfont{part}{size*={16pt}{18pt},series=\bfseries} % 30pt, baselineskip 36pt%
},
allcaps/.code={%
\let\beameroucslide@partformatcaps\MakeTextUppercase%
\let\beameroucslide@partformatspacinga\emptydummya%
\let\beameroucslide@partformatspacingb\emptydummyb%
\setbeamerfont{part}{size*={16pt}{18pt},series=\bfseries} % 30pt, baselineskip 36pt%
},
}
% redefine beamer title, subtitle, part and frametitle command
\patchcmd{\beamer@title}%
{\def\inserttitle{#2}}%
{\protected\def\inserttitle{{\beameroucslide@titleformatspacingb{LetterSpace=15.0}\beameroucslide@titleformatcaps{\beameroucslide@titleformatspacinga[120]{#2}}}}}%
{}%
{\PackageError{beameroucslide}{Patching original title failed}\@ehc}
\patchcmd{\beamer@subtitle}%
{\def\insertsubtitle{#2}}%
{\protected\def\insertsubtitle{{\beameroucslide@subtitleformatspacingb{LetterSpace=15.0}\beameroucslide@subtitleformatcaps{\beameroucslide@subtitleformatspacinga[120]{#2}}}}}%
{}%
{\PackageError{beameroucslide}{Patching original subtitle failed}\@ehc}
\patchcmd{\beamer@part}%
{\def\insertpart{\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}
\patchcmd{\beamer@@frametitle}
{{%
\gdef\insertframetitle{{#2\ifnum\beamer@autobreakcount>0\relax{}\space%
\usebeamertemplate*{frametitle continuation}\fi}}%
\gdef\beamer@frametitle{#2}%
\gdef\beamer@shortframetitle{#1}%
}}
{{%
\gdef\insertframetitle{{\beameroucslide@frametitleformatcaps{#2}\ifnum%
\beamer@autobreakcount>0\relax{}\space%
\usebeamertemplate*{frametitle continuation}\fi}}%
\gdef\beamer@frametitle{#2}%
\gdef\beamer@shortframetitle{#1}%
}}
{}
{\PackageError{beameroucslide}{Patching original frame title failed}\@ehc}
\makeatother
+132
View File
@@ -0,0 +1,132 @@
%% 版本:1.0
%% 作者:杨永全
%% 本文件的主要目的,是为了定义列表等内部元素的样式
%% 完成时间:2022-05-09
\RequirePackage{listings,verbatim}%引入代码包
\usepackage{tcolorbox} %引入彩色框
\tcbuselibrary{most} %引入所有包
%列表样式,使用了fontawesome图标
\setbeamertemplate{itemize item}{\faBookmark}
\setbeamertemplate{itemize subitem}{\faHandORight}
\setbeamertemplate{itemize subsubitem}{\faSquare}
%超链接的颜色等信息
\hypersetup{
%colorlinks=true, %超链接颜色,全部使用海大红。
linkcolor=oucred,
urlcolor=oucred,
citecolor=oucred,
anchorcolor=oucred,
}
%代码块的一些设定
\renewcommand{\ttdefault}{pcr}
\lstset{
frame=shadowbox,
numbers=left,
numberstyle=\small,
basicstyle=\ttfamily\upshape\small,
breaklines=true,
backgroundcolor=\color{oucsilver10},
xleftmargin=0.8cm,
framexleftmargin=0em,
keywordstyle=\bfseries\color{oucblue},
stringstyle=\color{oucblue},
commentstyle=\color{mygreen},
rulesepcolor= \color{oucsilver40},
rulecolor=\color{oucblue},
deletekeywords={compile},
escapechar=\&,
escapeinside={<@}{@>}
}
%% 代码块标题设定
\RequirePackage{caption}
\DeclareCaptionFormat{codecaptionformat}{%
\parbox{\textwidth}{\hspace{2em}\textcolor{violet}\faCode~\textcolor{violet}{#1#2}\hspace{.5em}#3}%代码块caption的设置
}
\captionsetup[lstlisting]{format=codecaptionformat}
%设置信息框titlebox
\newtcolorbox{titlebox}[2][]
{
title=#1, %标题
colback = white, %标题背景是白色
colframe = #2, %边框颜色
coltitle = #2, %标题颜色
boxrule=.5pt,%边框的粗细,细一点感觉更精致
boxed title style={size=normal,colframe=white,boxrule=0pt},%标题栏没有背景色和边框,只有文字
left=5pt, right=5pt, top=5pt, bottom=0pt,%内部文字边距
boxsep=5pt,
colbacktitle = white, enhanced,%标题的背景,白色
attach boxed title to top center={yshift=-4mm},%把标题放在中间
opacityupper={100}, %上面边框透明度
}
%设置笔记提示框
\newtcolorbox{notebox}[1][]
{
enhanced,
arc=2pt,%圆角
boxrule=.5pt,%边框
left=5pt, right=5pt, top=0pt, bottom=0pt,%文字边距
boxsep=5pt,
colframe=oucblue,
colback=oucblue10,
colbacktitle=oucblue10,
coltext=oucblue,
title={\textcolor{oucblue}{\faStickyNoteO\hspace{.5em}\bfseries{\textbf{#1}}}},
halign=left,
}
%设置重要提示框
\newtcolorbox{importantbox}[1][]
{
enhanced,
arc=2pt,
boxrule=.5pt,
left=5pt, right=5pt, top=0pt, bottom=0pt,
boxsep=5pt,
colframe=oucred,
colback=oucred10,
colbacktitle=oucred10,
coltext=oucred,
title={\textcolor{oucred}{\faExclamationCircle\hspace{.5em}\bfseries{\textbf{#1}}}},
halign=left,
}
%列表框
\newtcolorbox{vcolorbox}[2][]
{
boxrule=0.1pt,%边框,很细
arc=0pt,outer arc=0pt,%不要圆角
left=5pt, right=5pt, top=0pt, bottom=0pt,
leftrule=5pt, %左侧边框的宽度
colframe=#2,%边框的颜色
colback=white,
colbacktitle=white,
coltext=black,%内部文字的颜色,如果要和标题保持一致,可改为#2
title={\textcolor{#2}{\bfseries{\textbf{#1}}}},%标题样式
halign=left,
}
%要点框
\newtcolorbox{pointbox}[3][]
{
colback = white, %背景是白色
boxrule=0.5pt,%边框的粗细,细一点感觉更精致
colframe = #2, %边框颜色
fonttitle = \bfseries,%标题加粗
colbacktitle = #2, enhanced,
left=2pt, right=2pt, top=5pt, bottom=0pt,%内部文字边距
attach boxed title to top center={yshift=-2mm},
width=\textwidth,
height=#3,
title=#1
}
%一些元素的中文名称
\renewcommand{\figurename}{图}
\renewcommand{\tablename}{表}
\renewcommand{\lstlistingname}{代码}
\renewcommand{\abstractname}{摘要}
+254
View File
@@ -0,0 +1,254 @@
%% 版本:1.0
%% 作者:杨永全
%% 本文件的主要作用是定义主题的框架结构等模板信息
%% 完成时间:2022-05-09
\usepackage{dashrule}
% 页面整体布局
\setbeamersize{%
text margin left=0.8cm,
text margin right=0.8cm
}
%% 首页标题背景
\defbeamertemplate{background canvas}{title}{%
\includegraphics[width=\paperwidth, height=\paperheight]{logos/background.jpg}
}
%% 首页页面顶部元素
\newcommand{\topslider}[1]{%
\begin{tikzpicture}[overlay, remember picture]
\draw [fill=#1, draw=none, rounded corners=2pt] (current page.north east)
[turtle={
lt, forward=1.1\paperwidth,
lt, forward=.19\paperheight,
lt, forward=.47\paperwidth,
left=45, forward=1.5ex,
right=45, forward=.63\paperwidth,
home
}];
\end{tikzpicture}
}
%首页顶栏logo
\newcommand{\banner}{%
\begin{tikzpicture}[overlay, remember picture]
\node[anchor=north west, xshift=0.8cm, yshift=-0.6cm] at (current page.north west) {
\includegraphics[scale=0.02]{logos/ouc_logo.png}
};
\end{tikzpicture}
}
%% 底部有弧度的页脚部分
\newcommand{\bottomslider}[1]{%
\begin{tikzpicture}[overlay, remember picture]
\draw [fill=#1, draw=none, rounded corners=2pt] (current page.south east)
[turtle={
lt, fd=1.1\paperwidth,
rt, fd=0.03\paperheight,
rt, fd=.8375\paperwidth,
lt=45, fd=1.5ex,
rt=45, fd=.25\paperwidth,
home
}];
\end{tikzpicture}
}
%首页右下角网址
\newcommand{\oucurl}{%
\begin{tikzpicture}[overlay, remember picture]
\node[anchor=south east, text=oucblue] at (current page.south east) {\tiny www.ouc.edu.cn};
\end{tikzpicture}
}
%% 首页背景元素
\defbeamertemplate{background}{title}{%
\topslider{white}
\banner %首页的Logo
\bottomslider{white} %首页底部颜色
\oucurl %首页底部网址
}
%首页正文部分
\defbeamertemplate{title page}{text}{%
\begin{center} %所有文字居中
\vspace{2.5cm} %标题距离banner的距离
\usebeamercolor[white]{title}\usebeamerfont*{title}\strut{}\inserttitle\par%字体颜色为白色
\vspace{0.5cm}%副标题到主标题的距离
\usebeamercolor[white]{subtitle}\usebeamerfont{subtitle}\strut{}\insertsubtitle\par%字体为白色
\vspace{1.6cm}%作者到副标题的距离
\usebeamercolor[white]{title}\usebeamerfont*{author}\insertauthor\par%字体为白色
\vspace{0.3cm}%作者单位到作者的距离
\usebeamercolor[white]{title}\usebeamerfont*{institute}\insertinstitute%\enspace/字体为白色%\enspace
%\insertdate%如有必要,可再插入日期
\end{center}
}
\setbeamertemplate{title page}[text]
\pgfkeys{/beameroucslide/outer/.cd,
footline/.initial=empty,
navigation symbols/.initial=empty,
title page/.initial=text
}
%% 普通页面背景
\defbeamertemplate{background canvas}{empty}{}
\pgfkeys{/beamerhgf/outer/.cd,
background canvas/.initial=empty
}
%普通页面左下角信息
\setbeamertemplate{footline}{%
\hspace{0.8cm}
\usebeamercolor[fg]{title}\insertauthor\enspace\vrule width0.3pt\enspace\inserttitle%左下角作者信息和标题信息
\vspace{0.04cm} %页脚到底部的距离
}
% 普通页面右下角Logo
\newcommand{\footerlogo}{%
\begin{tikzpicture}[overlay, remember picture]
\node[anchor=south east, xshift=-1.8cm, yshift=-0.1cm] at (current page.south east) {
\includegraphics[scale=0.008]{logos/ouc_logo_bottom.png}
};
\end{tikzpicture}
}
%右下角页码导航
\setbeamertemplate{navigation symbols}{%
\vspace{-6pt}
\usebeamercolor[fg]{title}\usebeamerfont*{navigation symbols}\insertframenumber/\inserttotalframenumber
}
%% 普通页面frame背景
\defbeamertemplate{background}{frame}{%框架
\bottomslider{oucblue} %底部颜色为海大蓝
\footerlogo %右下角logo
}
%% 空页面的标题为空
\defbeamertemplate{headline}{empty}{
}%默认标题为空
%普通页面标题设置
\defbeamertemplate{frametitle}{frame}{%
\vspace{10pt}%
% \usebeamercolor[oucred]{frametitle}\usebeamerfont{sectiontitle}
% \thesection.\insertsection
\usebeamercolor[oucblue]{frametitle}\usebeamerfont{frametitle}
\thesubsection. \insertsubsection%显示二级标题
%\insertframetitle
%\thesection.\insertsection:\insertframetitle
\ifx\insertsubsubsection\empty%如果没有三级标题什么都不做
\else
\usebeamercolor[ouclightblue]{framesubtitle}\usebeamerfont{framesubtitle}
%\insertframesubtitle
\thesubsubsection.\insertsubsubsection
\fi
\vspace{0.5pt}%标题到下面的线之间的距离
{\color{oucblue}\hrule height 1.5pt depth 0pt}%标题下面的线
% \ifx\insertframesubtitle\empty%如果副标题为空
% \vspace{12pt}%
% %\strut{}
% \insertframetitle %插入标题
% \else%
% \insertframetitle\par%
% \usebeamercolor[ouclightblue]{framesubtitle}\usebeamerfont{framesubtitle}%\strut{}
% \insertframesubtitle%子标题的颜色,使用ouc light blue 海大标准色
% \fi%
% \par%
% \vspace{0.5pt}%标题到下面的线之间的距离
% {\color{oucblue}\hrule height 1.5pt depth 0pt}%标题下面的线
}
%因为在frame中引入了section,所以要为目录页面单独设置一个frametitle的模板,去掉了section信息
\defbeamertemplate{frametitle}{outlineframe}{
\vspace{12pt}%
\usebeamercolor[oucblue]{frametitle}\usebeamerfont{frametitle}
\insertframetitle
\usebeamercolor[ouclightblue]{framesubtitle}\usebeamerfont{framesubtitle}
\insertframesubtitle
\vspace{0.5pt}%标题到下面的线之间的距离
{\color{oucblue}\hrule height 1.5pt depth 0pt}%标题下面的线
}
%设置模板
\setbeamertemplate{background}[frame]
\setbeamertemplate{frametitle}[frame]
% 定义首页生成命令
\def\maketitle{%
{%
\setbeamertemplate{footline}{}
\setbeamertemplate{navigation symbols}{}
\ifbeamer@inframe%
\titlepage%首页页面
\else%
\setbeamertemplate{frame number}[invisible]%
\setbeamertemplate{date}[invisible]%
\setbeamertemplate{background canvas}[title]%
\setbeamertemplate{background}[title]%
\setbeamertemplate{title page}[title]%
\frame[t, noframenumbering]{\titlepage}%
\fi%
}%
% 将普通的页面背景改回去
\setbeamertemplate{background canvas}[empty]
}
%定义目录页生成命令
\def\makeoutline{
{
\setbeamertemplate{frametitle}[outlineframe]
\begin{frame}
\frametitle{目录}
\tableofcontents[hideallsubsections]
\end{frame}
}
\setbeamertemplate{frametitle}[frame]%再把模板改回去
}
%定义最后一页生成命令
\def\makelast{
\setbeamertemplate{background}[title]
\setbeamertemplate{background canvas}[title]%
\setbeamertemplate{frame number}[invisible]%
\setbeamertemplate{footline}{}
\setbeamertemplate{navigation symbols}{}
\begin{frame}
\begin{center} %所有文字居中
\vspace{3.5cm}
\huge\textcolor{white}{\textbf{\last}}%
\end{center}
\end{frame}
}
% 分节页面
\AtBeginSection[]{
\begin{frame}%
\begin{center} %所有文字居中
\vspace{2.5cm}%
%\hspace{0.3cm}%
\huge\textcolor{oucred}{\textbf{\thesection.\insertsectionhead}}%
\end{center}
\end{frame}%
}
%目录的模板
% \setbeamertemplate{section in toc}{%
% \begin{tcolorbox}[arc=0pt,boxrule=.5pt,colframe=oucblue,colback=white,coltext=oucred]
% \inserttocsectionnumber.~\inserttocsection
% \end{tcolorbox}
% }
\setbeamertemplate{section in toc}[sections numbered]
\setbeamercolor{section in toc}{bg=white,fg=oucred}
%设置有代码块的frame
\newenvironment{fragileframe}%
{\begin{frame}[fragile,environment=fragileframe]}%
{\end{frame}}
+77
View File
@@ -0,0 +1,77 @@
%!TEX program = xelatex
%% 版本:1.0
%% 2022-05-07
%% 作者:杨永全
%%本文件的主要目的,是为了定义幻灯片主题
\RequirePackage{booktabs}
\RequirePackage[T1]{fontenc}
\RequirePackage{fontspec}
\RequirePackage{hyperref}
\RequirePackage[utf8x]{inputenc}
\RequirePackage{listings}
\RequirePackage{tikz}
\usetikzlibrary{
calc,
turtle,
positioning
}
%应用额外的主题文件
\usefonttheme{OUCSlide}
\usecolortheme{OUCSlide}
\useinnertheme{OUCSlide}
\useoutertheme{OUCSlide}
\pgfkeys{/beameroucslide/.cd,
.search also={
/beameroucslide/inner,
/beameroucslide/outer,
/beameroucslide/color,
/beameroucslide/font,
},
title=regular,
subtitle=regular,
part=regular,
frametitle=regular,
}
%设置元素编号
\setbeamertemplate{caption}[numbered]
%设置footnote在tcolorbox外面
\makeatletter
% restore footnote internals to those in normal page, not minipage
\def\tcb@restore@footnote{%
\def\@mpfn{footnote}%
\def\thempfn{\arabic{footnote}}%
\let\@footnotetext\tcb@footnote@collect
}
% collect footnote text
\long\def\tcb@footnote@collect#1{%
% expand \@thefnmark before appending before app to \tcb@footnote@acc
\expandafter\gappto\expandafter\tcb@footnote@acc\expandafter{%
\expandafter\footnotetext\expandafter[\@thefnmark]{#1}%
}%
}
\def\tcb@footnote@use{%
\tcb@footnote@acc
\global\let\tcb@footnote@acc\@empty
}
\global\let\tcb@footnote@acc\@empty
\tcbset{
% restore for every box
every box/.style={
before upper pre=\tcb@restore@footnote
},
% use for layer 1 boxes only
every box on layer 1/.append style={
after app=\tcb@footnote@use
}
}
\makeatother
%设置footnote在tcolorbox外面结束