如何在 beamer frametitle 中使用 \hspace
how to use \hspace in beamer frametitle
我想将我的标题向右调整几毫米,但是当我尝试这样做时:
\addtobeamertemplate{frametitle}{\hspace{5mm}}
我的标题刚刚向下移动。我不明白为什么:
我也试过用这个:
\setbeamertemplate{frametitle}{\hspace{4mm}\insertframetitle}
但是我的整个标题默认向右移动了很多:
您在 frametitle
模板开头附加 space 的方法将不起作用,因为 frametitle
通常设置在跨越整个模板的 beamercolorbox
中页。如果在它前面添加 space ,它将不再适合该行,因此乳胶会在它之前添加一个换行符。最好的方法是重新定义模板,使框变小。
假设你使用默认的frametitle
模板(通过更改我用<- change value here
标记的行来调整位置):
\documentclass{beamer}
\makeatletter
\setbeamertemplate{frametitle}{%
\ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
\@tempdima=\textwidth%
\advance\@tempdima by\beamer@leftmargin%
\advance\@tempdima by\beamer@rightmargin%
\advance\@tempdima by-4cm% <- change value here
\hfill%
\begin{beamercolorbox}[sep=0.3cm,left,wd=\the\@tempdima]{frametitle}
\usebeamerfont{frametitle}%
\vbox{}\vskip-1ex%
\if@tempswa\else\csname beamer@fteleft\endcsname\fi%
\strut\insertframetitle\strut\par%
{%
\ifx\insertframesubtitle\@empty%
\else%
{\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\strut\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{title}
abc
\end{frame}
\end{document}
我想将我的标题向右调整几毫米,但是当我尝试这样做时:
\addtobeamertemplate{frametitle}{\hspace{5mm}}
我的标题刚刚向下移动。我不明白为什么:
我也试过用这个:
\setbeamertemplate{frametitle}{\hspace{4mm}\insertframetitle}
但是我的整个标题默认向右移动了很多:
您在 frametitle
模板开头附加 space 的方法将不起作用,因为 frametitle
通常设置在跨越整个模板的 beamercolorbox
中页。如果在它前面添加 space ,它将不再适合该行,因此乳胶会在它之前添加一个换行符。最好的方法是重新定义模板,使框变小。
假设你使用默认的frametitle
模板(通过更改我用<- change value here
标记的行来调整位置):
\documentclass{beamer}
\makeatletter
\setbeamertemplate{frametitle}{%
\ifbeamercolorempty[bg]{frametitle}{}{\nointerlineskip}%
\@tempdima=\textwidth%
\advance\@tempdima by\beamer@leftmargin%
\advance\@tempdima by\beamer@rightmargin%
\advance\@tempdima by-4cm% <- change value here
\hfill%
\begin{beamercolorbox}[sep=0.3cm,left,wd=\the\@tempdima]{frametitle}
\usebeamerfont{frametitle}%
\vbox{}\vskip-1ex%
\if@tempswa\else\csname beamer@fteleft\endcsname\fi%
\strut\insertframetitle\strut\par%
{%
\ifx\insertframesubtitle\@empty%
\else%
{\usebeamerfont{framesubtitle}\usebeamercolor[fg]{framesubtitle}\strut\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{title}
abc
\end{frame}
\end{document}