Beamer:使用 shrink 参数更改参考文献的字体大小会导致错误

Beamer:使用 shrink 参数更改参考文献的字体大小会导致错误

我尝试使用 frame 参数的 shrink 来更改引用的字体大小。但是,如果我运行此代码:

\documentclass{beamer}

\usepackage[american]{babel}
\usepackage[utf8]{inputenc}
\usepackage{csquotes}
\usepackage[style=apa, backend=biber,doi,url]{biblatex}
\DeclareLanguageMapping{american}{american-apa}

\begin{filecontents}{literature.bib}
@article{foobar,
  Author = {An Author},
  Journal = {A Journal},
  Pages = {1--2},
  Title = {Some title},
  Volume = {1},
  Year = {1900}
}

\end{filecontents}
\addbibresource{literature.bib}

\begin{document}

\frame{
  \textcite{foobar}
}

\frame[shrink=50]{
  \frametitle{References}
  \printbibliography
}

\end{document}

我收到以下错误:

! Arithmetic overflow.
\beamer@shrinkframebox ...\@tempdimc by\@tempcnta 
                                                  \relax \ifdim \@tempdimc >...
l.32 }

? 
! Emergency stop.
\beamer@shrinkframebox ...\@tempdimc by\@tempcnta 
                                                  \relax \ifdim \@tempdimc >...
l.32 }

如果我删除 shrink 参数,它就会起作用。

我在 Debian Squeeze 上使用 TexLive 2011,并且更新了我的所有软件包;)。

答案1

我认为\renewcommand*{\bibfont}{\scriptsize}会有所帮助!;)

答案2

我没有使用 biblatex,André 的答案对我来说不起作用。我设法通过以下方式实现结果:

\setbeamerfont{bibliography item}{size=\footnotesize}
\setbeamerfont{bibliography entry author}{size=\footnotesize}
\setbeamerfont{bibliography entry title}{size=\footnotesize}
\setbeamerfont{bibliography entry location}{size=\footnotesize}
\setbeamerfont{bibliography entry note}{size=\footnotesize}

以防万一,我正在使用metropolis主题。

答案3

我尝试了 André 的答案,但没有成功。如果您需要快速解决方案,我找到了一种解决方法:

  1. 编译您的 beamer 文档,包括参考书目(引用/格式样式等的正确设置)。

  2. 打开*.bbl文件并复制其所有内容(\begin{thebibliography} ...\end{thebibliography})。

  3. 将其粘贴到\bibliograpy{yourbibfile}命令上。

  4. \small后面放一个标签\begin{thebibliography}以便缩小字体大小供您参考!

正如我所说,如果你不想大惊小怪的话,这是一种快捷方式。缺点是它对\...cite文档中的更改(命令)完全没有反应。

相关内容