我目前正在使用 latex-beamer 做一些演示。
现在我有一些定理,我想添加一些背景信息来说明它们的出处(又称引文)。我希望它们出现在通常放置定理描述/名称的位置。
当然,我尝试了 flushright,但显然它不太智能,有两个细节需要修复。
1.) 引用时我真的不想使用双括号,因为描述会生成 (name),而引用则会生成 ([name])。我从 MWE 中保留了这一点,因为添加 bib 似乎太多了。
2.) 我希望引用出现在定理标题的右侧。
提前致谢
(我添加了两张图片,一张是编译后的 MWE,第二张是它应该是什么样子,只是没有蓝色条)
在这里,我为 MWE 提供了一些关于它不应该是什么样子的背景信息。
\documentclass[11pt]{beamer}
\RequirePackage[utf8]{inputenc}
\theoremstyle{definition}
\newtheorem{thm}{Theorem}[section]
\setbeamertemplate{theorems}[numbered] %Numbered Theorems
\begin{document}
\begin{frame}{A wonderful frame}
\begin{thm}[replace with citation]
Let $\varepsilon<0$.
\end{thm}
\begin{thm}[\flushright Foo]
Let $\varepsilon>0$.
\end{thm}
\end{frame}
\end{document}
答案1
因此,花了一些时间后,我意识到部分答案已经存在。
看着这里您可以从 Werner 找到此代码。使用一些\hfill
括号对其进行修改有助于此演示。
\makeatletter
\expandafter\let\csname beamer@@tmpop@theorem begin@numbered\endcsname\relax
\defbeamertemplate{theorem begin}{numbered}
{%
\begin{\inserttheoremblockenv}
{%
\inserttheoremname
\inserttheoremnumber
\ifx\inserttheoremaddition\@empty\else\ \inserttheoremaddition\fi% (\inserttheoremaddition)
}%
}
\makeatother