\documentclass{ctexbeamer}
\usetheme{gpark}
% meta-data
\title{BUAA Beamer 主题 \\ Green Park 绿园}
\subtitle{使用 \LaTeX\ 制作幻灯片}
\author{\href{https://github.com/Thysrael}{Thysrael}}
\date{创建于 2024 年 6 月 11 日}
\titlebackground{images/titlebackground}
\background{images/background2}
\begin{document}
\maketitle
\begin{frame}{声明}
  “绿园 GreenPark”是由北航六系同学开发的一款非官方的 \LaTeX Beamer 主题,它具有支持中文、简约现代的设计特点。
  
  GreenPark 是基于 \chref{https://www.overleaf.com/latex/templates/sintef-presentation/jhbhdffczpnx}{SINTEF Presentation} 和 \chref{https://github.com/liu-qilong/Beamer-LaTeX-Themes}{Beamer-LaTeX-Themes} 的二次开发,GreenPark 去掉了 SINTEF 的一些 deprecated 的特征,并增加了中文支持。感谢这些开发者高品味和优雅的设计。封面素材来自北航姜海洋同学的摄影作品。背景图片来自北航新闻中心,均已取得相关授权。感谢他们的慷慨。
  本主题采用 \chref{https://creativecommons.org/licenses/by/4.0/deed.zh-hans}{CC-BY-4.0},您可以自由地共享和演绎,只需要给出适当的署名。
  本主题目前已经结束开发\textsl{(其实只是为了在离开北航前留个印迹)}\   。但是后续或许会继续开发。欢迎提交 issue 和 pr 。
\end{frame}
\section{使用}
\begin{frame}{依赖}
  \begin{itemize}
  \item 构建依赖:\texttt{XeLaTeX} ,\texttt{latexmk} (可选)
  \item 字体依赖:\texttt{Times New Roman},\texttt{TsangerJinKai05}, \texttt{Source Han Serif CN},\texttt{JetBrainsMono Nerd Font Mono}, \texttt{STXingkai}
  \item 代码高亮依赖:\texttt{pygmentize} (可选)
  \end{itemize}
  
  \emph{请忽略这些依赖,在 Overleaf 中不需要考虑这些问题!}
\end{frame}
\begin{frame}[fragile]{构建}
  使用如下命令即可构建 Beamer 和清空 Beamer :
  
  \begin{minted}{shell-session}
    make
    make clean
  \end{minted}
  如果希望加快构建速度,可以安装 \texttt{latexmk} 并使用如下命令:
  \begin{minted}{shell-session}
    make mk
  \end{minted}
  但是这种方法会导致报错不明显。
\end{frame}
\begin{frame}{自定义}
  \begin{itemize}
  \item 使用 \texttt{titlebackground} 和 \texttt{background}  命令可以设置首页图片和后续背景。
  \item 修改 \chref{file:./gparkcolor.sty}{gparkcolor.sty} 文件可以修改主题颜色,行内样式颜色等。
  \item 修改 \chref{file:./beamerthemegpark.sty}{beamerthemegpark.sty} 文件可以修改字体,行间距或者其他主题设置。
  \end{itemize}
  GreenPark 的代码量只有 500 行,并有详细注释。非常容易修改出一套其他大学的 Beamer 。
  
\end{frame}
\section{样式}
\subsection{段内}
\begin{frame}{字体}
  本文使用到了多种字体:
  \begin{itemize}
  \item 英文字体 \texttt{Times New Roman}
  \item 正文字体 \texttt{FandolFang}
  \item 标题字体 \texttt{FandolHei}
  \item 手写字体 \texttt{FandolKai}。
  \end{itemize}
\end{frame}
\begin{frame}{命令}
  \begin{itemize}
  \item 粗体:\texttt{textbf} \textbf{普通 bold},\texttt{ctextbf} \ctextbf{彩色 bold}
  \item 斜体:\texttt{textsl} \textsl{普通 slant},\texttt{ctextsl} \ctextsl{彩色 slant}
  \item 强调:\texttt{emph} \emph{强调 emphasize}
  \item 链接:\texttt{href} \href{https://thysrael.github.io/}{普通 link},\texttt{chref} \chref{https://thysrael.github.io/}{彩色 link}
  \item 代码:\texttt{ttt} \texttt{inline code}
  \item 公式:\(e^{i\pi} + 1 = 0\)
  \end{itemize}
\end{frame}
\begin{frame}{字号}
  \LaTeX 支持多种字号:
  
  \begin{columns}
    \begin{column}{0.4\textwidth}
      \begin{itemize}
      \item \texttt{tiny}: {\tiny 极小号字体}
      \item \texttt{footnotesize}: {\footnotesize 脚注大小字体}  
      \item \texttt{footnotesize}: {\footnotesize 脚注大小字体}
      \item \texttt{small}: {\small 小号字体}
      \item \texttt{normalsize}: {\normalsize 正常大小字体}
      \item \texttt{large}: {\large 大号字体}
        
      \end{itemize}
    \end{column}
    \begin{column}{0.6\textwidth}
      \begin{itemize}
      \item \texttt{Large}: {\Large 更大号字体}
      \item \texttt{LARGE}: {\LARGE 很大号字体}
      \item \texttt{huge}: {\huge 极大号字体}
      \item \texttt{Huge}: {\Huge 超大号字体}
      \end{itemize}
    \end{column}
  \end{columns}
\end{frame}
\subsection{段落}
\begin{frame}[fragile]{有序列表}
  可以用如下方式使用有序列表:
  \begin{columns}
    \begin{column}{0.6\textwidth}
      \begin{minted}{latex}
        \begin{enumerate}
        \item first item
        \item second item
          \begin{enumerate}
          \item second item first child
          \item second item second child
          \end{enumerate}
        \item third item
        \end{enumerate}
      \end{minted}
    \end{column}
    
    \begin{column}{0.4\textwidth}
      \begin{enumerate}
      \item first item
      \item second item
        \begin{enumerate}
        \item second item first child
        \item second item second child
        \end{enumerate}
      \item third item
      \end{enumerate}
    \end{column}
  \end{columns}
\end{frame}
\begin{frame}[fragile]{无序列表}
  可以用如下方式使用无序列表:
  
  \begin{columns}
    \begin{column}{0.6\textwidth}
      \begin{minted}{latex}
        \begin{itemize}
        \item first item
        \item second item
          \begin{itemize}
          \item second item first child
          \item second item second child
          \end{itemize}
        \item third item
        \end{itemize}
      \end{minted}
    \end{column}
    
    \begin{column}{0.4\textwidth}
      \begin{itemize}
      \item first item
      \item second item
        \begin{itemize}
        \item second item first child
        \item second item second child
        \end{itemize}
      \item third item
      \end{itemize}
    \end{column}
  \end{columns}
\end{frame}
\begin{frame}[fragile]{图片}
  在 Beamer 中插入图片的方法和 \LaTeX 中的是一样的,同样可以加注释和标签,如图 \ref{demo} 。但是 Beamer 的 \texttt{ref} 会显示页数而非计数器。
  
  \begin{figure}[h!]
    \label{demo}
    \includegraphics[width=0.4\textwidth]{images/demo}
    \centering
    \caption{瑞克和莫蒂 demo}
  \end{figure}
\end{frame}
\begin{frame}[fragile]{子图}
  在 Beamer 中也可以插入子图
  
  \begin{figure}[h!]
    \centering
    \begin{tabular}{cc}
      \subfigure[Rick]{
      \includegraphics[width=0.40\textwidth]{images/demo}
      } &
          \subfigure[Morty]{
          \includegraphics[width=0.40\textwidth]{images/demo}
          }
    \end{tabular}
    \caption{两张瑞克和莫蒂}
    \label{Nginx-Latency}
  \end{figure}
\end{frame}
\begin{frame}{三线格}
  Beamer 同样支持三线格:
  
  \begin{table}[h]
    \centering
    \begin{tabular}{ccc}
      \toprule 
      a & b  &  c \\ 
      \midrule 
      1 & 2 & 3 \\
      4 & 5 & 6 \\
      7 & 8 & 9 \\
      \bottomrule 
    \end{tabular}
  \end{table}
\end{frame}
\begin{frame}[fragile]{Listing 代码块}
  Green Park 一共提供了 2 中代码块环境,其中一种是 \texttt{lslisting} 环境,这种代码块的依赖较少,但是高亮效果较差:
  
  \begin{block}{HelloWorld in C}
    \begin{lstlisting}[language=c]  
      #include <stdio.h>
      int main() {
        printf("Hello, world!\n");
        return 0;
      }
    \end{lstlisting}
  \end{block}
\end{frame}
\begin{frame}[fragile]{Minted 代码块}
  另一种是 \texttt{minted} 环境,这种代码块的依赖较少,高亮效果好,但是需要安装 \chref{https://pygments.org/docs/cmdline/}{pygmentize}:
  \begin{minted}{c}
    #include <stdio.h>
    int main() {
      printf("Hello, world!\n");
      return 0;
    }
  \end{minted}
\end{frame}
\begin{frame}{数学公式}
  Green Park 也支持公式的插入和编号:
  
  \begin{align}
    &\oint_{l} H \cdot dl=\int_{s}J\cdot ds+ \int_{s} \frac {\partial D} {\partial t} \\
    &\oint_{l} E \cdot dl=-\frac {d}{dt}\int_{s}B\cdot ds \\
    &\oint_{s}B\cdot ds=0 \\
    &\oint_{s}D\cdot ds=\int_{s}\rho dv
  \end{align}
\end{frame}
\subsection{结构}
\begin{frame}[fragile]{目录}
  Beamer 的基本单位是 frame 。我们可以用 \texttt{frametitle} 来指定标题,或者直接向 \texttt{frame} 环境传入题目参数。当 frame 中有 \texttt{minted} 环境时,需要传入可选参数 \texttt{[fragile]} 。
  Beamer 中同样可以使用 \texttt{section} 和 \texttt{subsection} 。它们组成了 Beamer 的目录结构,frame 会依附在相邻的目录中。
\end{frame}
\begin{frame}[fragile]{多列布局}
  可以用如下代码在 frame 中形成多列布局。
  \begin{minted}{latex}
    \begin{columns}  
      \begin{column}{0.5\textwidth}
        Root
      \end{column}
      \begin{column}{0.5\textwidth}
        Hammer
      \end{column}
    \end{columns}
  \end{minted}
\end{frame}
\section{开发}
\begin{frame}{事项}
  Green Park 是我在短短两天内非常仓促地开发出来的,所以肯定存在很多问题,希望能在以后地迭代中持续优化。目前的优化大致有三个方向:
  \begin{itemize}
  \item 工程化:以上传到 Overleaf 为目标;同时剔除项目中的 SINTEF 残留。
  \item 字体:目前字体还有一些非常恼人的细节问题,主要是等宽字体。
  \item 美观:Green Park 设计的一个重要方向就是多态,它可以通过定义主题色和校徽等素材轻松地“制造”出新的一套模板,欢迎大家自定义自己的主题,如果方便的话,可以提个 PR 。
  \end{itemize}
\end{frame}
\begin{frame}{总结}
  浑浑噩噩地四年就过去了,我之前在准备德育答辩的时候搜索北航的 Beamer 主题,发现大多都太老旧了。所以花了一些时间制作了 Green Park 主题。我大概还有不到一个月就要离开北京了,这大概就是我寄给她的最后一封情书了。
  $$
  te \ echo\  de\  menos.
  $$
\end{frame}
\backmatter
\end{document}