其实到目前为此,帧标题没有任何的问题,它的形式是下面这样的。
可是呢,好心的同事给我提供了一个得到老专家认可的模板,在那里,帧标题是有它的样式的。我对此做了一些修改,来向那个样式靠近。主要的修改有两个方面,一是增加了一个背景图片,二是把主标题和副标题放在了同一行里。
使用的代码如下
\newsavebox{\frametitlebox}%
\newlength{\frametitleboxlength}%
\newlength{\frametitleboxheight}%
\defbeamertemplate{frametitle}{NGEGFrametitleTemplate}
{%
\nointerlineskip%去掉行间的粘连
\sbox{\frametitlebox}
{%
\insertframetitle%
\ifx\insertframesubtitle\@empty%\ifx<token1><token2>用来测试两个记号是否相同,这句话的意思是,如果子标题为空
\par%什么也不做,结束当前段落
\else
:\usebeamerfont*{framesubtitle}{\insertframesubtitle}%插入子标题,并设置字体和颜色
\par%结束当前段落
\fi%结束判断
}%
\settoheight{\frametitleboxheight}{\usebox{\frametitlebox}}%
\setlength{\frametitleboxheight}{1.4\frametitleboxheight}%
\hbox{%
\hskip-\Gm@lmargin%\Gm@lmargin是页面边缘和文本边缘之间的间距,水平往回跳过这个间距,其实就是来到了页面的最左边
\rlap{%导入标题栏背景的图片
\includegraphics[width=1.01\paperwidth,height=\frametitleboxheight]{标题栏背景}%
}%
\rlap{%插入标题内容
\raisebox{0.2\frametitleboxheight}%
{%
\usebox{\frametitlebox}%
}%
}%
\hskip-\Gm@lmargin%
}
}
\setbeamertemplate{frametitle}[NGEGFrametitleTemplate]
出现的效果如下