Beamer 框架标题手动改变垂直和水平位置

Beamer 框架标题手动改变垂直和水平位置

我正在尝试更改框架标题和副标题的垂直和水平位置。到目前为止,我正在使用

\setbeamertemplate{frametitle}[default][center]

但我希望有更多控制权。是否可以使用毫米或像素代替参数来定义向右移动center

干杯!

答案1

\setbeamertemplate{frametitle}[default]在 中定义beamerouterthemedefault.sty。如果您从那里获取定义,则可以根据需要重新定义它。例如,使用 来添加一个 shift \hspace*{1cm}

\documentclass{beamer}

\makeatletter
\setbeamertemplate{frametitle}{
    \ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
    \@tempdima=\textwidth%
    \advance\@tempdima by\beamer@leftmargin%
    \advance\@tempdima by\beamer@rightmargin%
    \hspace*{1cm} %%%%%%%%%%%%% For example insert shift to right
    \begin{beamercolorbox}[sep=0.3cm,center,wd=\the\@tempdima]{frametitle}
        \usebeamerfont{frametitle}%
        \vbox{}\vskip-1ex%
        \if@tempswa\else\csname beamer@ftecenter\endcsname\fi%
        \strut\insertframetitle\strut\par%
        {%
            \ifx\insertframesubtitle\@empty%
            \else%
            {\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\insertframesubtitle\strut\par}%
            \fi
        }%
        \vskip-1ex%
        \if@tempswa\else\vskip-.3cm\fi% set inside beamercolorbox... evil here...
    \end{beamercolorbox}%
}
\makeatother

\begin{document}


    \begin{frame}
        \frametitle{te}
        abc
    \end{frame} 

\end{document}

相关内容