我正在beamer
使用 和pdflatex
准备演示文稿bibtex
。如何将引用放在框架末尾?如果我使用 allowframebreaks 会怎样?
我不希望在演示结束时将所有参考文献放在一个大框架中,而是希望每个参考文献都作为脚注放在使用它的框架中。
注意:我使用自定义参考书目样式和作者年份引用样式。
平均能量损失
\documentclass[xcolor=dvipsnames, 10pt]{beamer}
\usepackage[T1]{fontenc}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{amsmath,bm,mathtools}
\usepackage{natbib}
\usepackage{bibentry}
\bibliographystyle{apalike}
\usepackage{chngcntr}
\counterwithin*{footnote}{page}
\newcommand\footcite[1]{\footnote{\bibentry{#1}}\label{\thepage:#1}}
\newcommand\secondcite[1]{\textsuperscript{\ref{\thepage:#1}}}
\setbeamertemplate{navigation symbols}{}
\definecolor{byublue}{RGB}{0 34 85}%added
\definecolor{mydarkgray}{RGB}{64 64 64}%added
\usecolortheme[named=MidnightBlue]{structure}%added
\usetheme{Montpellier}%Montpellier originally
\useoutertheme{tree}%added
\useinnertheme{circles}%added
\beamersetuncovermixins{\opaqueness<1>{25}}{\opaqueness<2->{15}}
\usefonttheme{professionalfonts} % using non standard fonts for beamer
\usefonttheme{serif} % default family is serif
\begin{document}
\nobibliography{bibliography_phd_journal_key}
\section{Introduction}
\begin{frame}
\begin{center}
Some text \footcite{titanath2008p165326}
another test \secondcite{titanath2008p165326}
\end{center}
\begin{tabular}{|c|c|}
\hline
Header\footcite{titanath2008p165326} & header \\
\hline
1 & 2 \\
\hline
\end{tabular}
\end{frame}
\bibliographystyle{mybibstyle}
\end{document}
我使用两个外部 .bib 文件。一个是主 .bib 文件,另一个用于期刊名称缩写。
答案1
如果您使用natbib
引用,那么您可以使用该bibentry
包在脚注中创建引用。应该注意的是,这有点像 hack,它并没有真正实现正确的脚注引用样式,而是模仿了一种样式。为了处理后续引用(如您在评论中要求的那样),我创建了第二个命令,\secondcite
它将放置一个脚注,引用正确的引用的原始脚注编号,而不会重复参考书目条目本身。以下是一个例子:
\documentclass{beamer}
\begin{filecontents}{\jobname.bib}
@book{Saussure1995,
Author = {Ferdinand de Saussure},
Origyear = {1916},
Publisher = {Payot},
Title = {Cours de Linguistique G{\'e}n{\'e}rale},
Year = {1995}}
@book{Labov1972,
Address = {Philadelphia},
Author = {William Labov},
Publisher = {University of Pennsylvania Press},
Title = {Sociolinguistic Patterns},
Year = {1972}}
\end{filecontents}
\usetheme{Montpellier}
\usepackage{natbib}
\usepackage{bibentry}
\bibliographystyle{apalike}
\usepackage{chngcntr}
\counterwithin*{footnote}{page}
\newcommand\footcite[1]{\footnote{\bibentry{#1}}\label{\thepage:#1}}
\newcommand\secondcite[1]{\textsuperscript{\ref{\thepage:#1}}}
\begin{document}
\nobibliography{\jobname}
\begin{frame}
\frametitle{Stuff famous linguists asked}
\begin{block}{A block}
\begin{enumerate}
\item Is it part of \emph{langue} or part of \emph{parole}?\footcite{Saussure1995}
\item Is it socially stratified?\footcite{Labov1972}
\item More Saussure\secondcite{Saussure1995}
\end{enumerate}
\end{block}
\end{frame}
% The next frame is a duplicate for testing purposes
\begin{frame}
\frametitle{Stuff famous linguists asked}
\begin{block}{A block}
\begin{enumerate}
\item Is it part of \emph{langue} or part of \emph{parole}?\footcite{Saussure1995}
\item Is it socially stratified?\footcite{Labov1972}
\item More Saussure\secondcite{Saussure1995}
\end{enumerate}
\end{block}
\end{frame}
\end{document}
如果你希望参考文献成为一个大框架,那么使用[allowframebreaks]
就是最好的选择。我发现参考文献的标准格式过于beamer
花哨,所以我把所有内容都删掉了:
\setbeamercolor*{bibliography entry title}{fg=black}
\setbeamercolor*{bibliography entry author}{fg=black}
\setbeamercolor*{bibliography entry location}{fg=black}
\setbeamercolor*{bibliography entry note}{fg=black}
\setbeamertemplate{bibliography item}{}
我还允许在后续幻灯片中使用“(续)”:
\setbeamertemplate{frametitle continuation}[from second]
参考幻灯片本身很简单。
\begin{frame}[t,allowframebreaks]
\frametitle{References}
\bibliography{<bibfile>}
\end{frame}
\end{document}