当存在包 setspace 时 footfullcite 不起作用

当存在包 setspace 时 footfullcite 不起作用

对于我的 beamer 演示,我使用的是footfullcite。这工作正常,除非我还使用setspace

附件是一个最小工作示例。

\documentclass{beamer}
\title{mini}
  \usepackage[
    backend=bibtex8,
  ]{biblatex}          
  \usepackage{setspace}
\addbibresource{mini.bib}
\begin{document}
\section{Start}
\begin{frame}
  %\setstretch{2}              
Some text \footfullcite{keys}
\end{frame}
\end{document}

使用 mini.bib:

@article{keys,
  author={Author},
  title={Title}
}

引用计数出来了,但是参考书目还没有出来在此处输入图片描述

我正在寻找的是每张幻灯片底部的引用,并且行与行之间有双倍行距,例如: 在此处输入图片描述

\setstretch{2}

答案1

setspace包重新定义\@footnotetext,以便它不使用正常的baselineskip;然而,它假定的定义是LaTeX内核中的定义,但beamer有一个非常的不同定义\@footnotetext

由于 提供的新定义无法对 做setspace任何事情beamer,因为脚注文本保存在\insert与 使用的类不同的类中beamer,所以脚注会在超空间中消失。

这是一个补丁:

\documentclass{beamer}
\usepackage{etoolbox}

\makeatletter
% save the meaning of \@footnotetext
\let\BEAMER@footnotetext\@footnotetext
\makeatother

\usepackage{setspace}

\makeatletter
% restore the meaning of \@footnotetext
\let\@footnotetext\BEAMER@footnotetext
% patch the relevant command to do single spacing in footnotes
\expandafter\patchcmd\csname beamerx@\string\beamer@framefootnotetext\endcsname
  {\reset@font}
  {\def\baselinestretch{\setspace@singlespace}\reset@font}
  {}{}
\makeatother

\begin{document}
\begin{frame}
TEXT\footnote{FOOTNOTE}
\end{frame}
\end{document}

在此处输入图片描述

故事的道德启示

不要setspace与 一起使用beamer

相关内容