Beamer制作演示文档-4:设置标题页的样式
到目前为止,我建立了一个叫做NGEGTemplate.cls
的文类文件,它现有的内容为:
\LoadClass{beamer}
\NeedsTeXFormat{LaTeX2e}%宏包所属的Latex版本
\ProvidesClass{NGEGTemplate}[2020/08/14 My custom beamer class]
\RequirePackage{ctex}%中文支持
\useoutertheme{infolines}
\useinnertheme{rounded}
\usecolortheme{rose}
\usecolortheme{whale}
%% 在每个章节的前面显示目录提示
\AtBeginSection[]
{
\begin{frame}{主要内容}
\transfade%淡入淡出
\tableofcontents[sectionstyle=show/shaded,subsectionstyle=show/shaded/hide]
\addtocounter{framenumber}{-1} %目录页不计算页码
\end{frame}
}
%页面大小设置
\input{pagesize}
%背景设置
\input{background}
我的main.tex
文件的内容为:
\documentclass{NGEGTemplate}
\title{南宫二狗的Beamer模板}
\institute{Latex自学社}
\author{南宫二狗}
\begin{document}
\transblindshorizontal%一个动画效果
\begin{frame}{}
\transdissolve%溶化
\maketitle
\end{frame}
\end{document}
以上所生成的标题页是下面的样子
我想把它改成组织和姓名在同一行,使用同样的字体。同时不显示日期。使用的代码如下。
\defbeamertemplate{title page}{NGEGTitlePageTemplate}%定义一个叫做NGEGTitlePageTemplate的title page模板
{
% \vbox{}
\vfill%竖直方向空白填充,和下面的\vifll结合使用可以使它们之间的内容竖直居中
\begin{beamercolorbox}[sep=8pt,center,rounded=true]{title}%使用一个彩色盒子环境,内容和边界的距离设置为8pt,内容居中对齐,边界拐角使用圆角。盒子的颜色使用title的颜色
\usebeamerfont{title}\inserttitle\par%%插入标题内容,并对字体进行了设置
\ifx\insertsubtitle\@empty%%\ifx的作用是比较两个字符串是否相等,这里的作用是判断是否有子标题,如果没有,就什么也不做
\else%%有子标题
\vskip0.25em%%竖直跳过一段距离
{\usebeamerfont{subtitle}\usebeamercolor[fg]{subtitle}\insertsubtitle\par}%%插入子标题,并设置了所使用的字体和前景颜色
\fi%
\end{beamercolorbox}%
\vskip2cm\par%%竖直跳过一段距离
\begin{beamercolorbox}[sep=8pt,center]{institute}%使用一个彩色盒子环境,内容和边界的距离设置为8pt,内容居中对齐。盒子的颜色使用institute的颜色
\usebeamerfont{institute}\insertinstitute\hskip1cm\usebeamerfont{author}\insertauthor\par%插入机构名和作者名,之间水平间隔1cm,并设置使用institute的字体
\end{beamercolorbox}
\vfill
}
\setbeamertemplate{title page}[NGEGTitlePageTemplate]%使用这个叫做NGEGTitlePageTemplate的title page模板
命令\defbeamertemplate{title page}{template name}{template context}
的作用是对标题页定义一个模板,这个模板的名字叫做template name
,它的样式由template context
里面的代码来制定。
命令\setbeamertemplate{title page}[template name]
的作用是把叫做template name
的模板应用到标题页上。
最终得到的样式如下:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏