我一直在尝试改变 beamer 中脚注的行为。我可以很好地更改“脚注”模板,但无法在两个地方更改标记。理想情况下,我希望有灵活的控制,但这里有一个简单的示例。
如果我想使用[1]
而不是^1
。看到之后如何在 Beamer 演示文稿中更改脚注字体大小,这是我尝试过的:
\documentclass{beamer}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makefnmark}{\insertfootnotemark{#1}}{\insertfootnotemark{[#1]}}{}{}
\makeatother
\setbeamertemplate{footnote}{%
[\insertfootnotemark] \insertfootnotetext
}
\begin{document}
\begin{frame}{Footnote test}
Hello World.\footnote{Hello Back}
\end{frame}
\end{document}
但 pdflatex 的输出似乎没有变化。我见过很多人弄乱颜色(见在投影仪中为脚注标记添加颜色),但从我所看到的来看,风格并没有太大差别。
答案1
你并没有错,但beamer
在某些方面不够灵活(主要是手册中不鼓励的方面)。这里需要几个补丁
\documentclass{beamer}
\usepackage{etoolbox}
\makeatletter
\patchcmd{\@makefnmark}{\@textsuperscript}{\@makefnmark@aux}{}{}
\newcommand*{\@makefnmark@aux}[1]{[#1]}
\makeatother
\setbeamertemplate{footnote}{%
\leavevmode \insertfootnotemark~\insertfootnotetext
}
\begin{document}
\begin{frame}{Footnote test}
Hello World.\footnote{Hello Back}
\end{frame}
\end{document}
这个想法首先是删除\@textsuperscript
,\@makefnmark
然后再处理我们需要一个空间来实际打印脚注的问题。这需要一个\leavevmode
,我猜它应该在底层代码中,但显然不是!