與此最接近的問題是這裡。最簡單的解決方案是使用包\shortcite
中提供的apacite
。然而,\shortcite
當我將它與 beamer 一起編譯時,它被視為未知命令。
這些是我加載的包:
\documentclass[11pt]{beamer}
\usefonttheme[onlymath]{serif}
\usepackage{beamerthemesplit}
\usepackage[T1]{fontenc} % Use 8-bit encoding that has 256 glyphs
\usepackage[natbibapa]{apacite}
\usepackage[english]{babel} % English language/hyphenation (avoids badboxes)
\usepackage{amsmath,amsfonts,amsthm} % Math packages
\usepackage{graphicx,color}
\usepackage{algorithm, algorithmic}
\usepackage{booktabs}
\usepackage{gensymb} % \degree symbol
\usepackage{color}
這是顯示參考文獻的地方
\subsection{Bibliography}
\begin{frame}[allowframebreaks]{References}
\tiny
%\bibliographystyle{IEEEtran}
\bibliographystyle{apacite}
\bibliography{GaitAnalysis}
\end{frame}
為什麼不\shortcite
工作?是否還有其他替代方案來解決該問題?
答案1
當您載入apacite
該natbibapa
選項時,它不會實作使用的擴充引用命令apacite
。因此該\shortcite
命令不可用,只能使用natbib
提供的引用命令。
不幸的是,natbib
對此採取了不同的方法,並假設短版本是預設的,並且僅提供引用命令來強制使用長版本,但反之則不然。
所以解決你的問題的最簡單的解決方案是加載apacite
沒有選項natbibapa
。
% !BIB TS-program = bibtex
\documentclass{beamer}
\begin{filecontents}{\jobname.bib}
@article{TestCite2000,
Author = {Smith, R. and Jones, O. and Doe, J and Yang, X. and Silva, E.},
Journal = {A Great Predatory Journal},
Title = {A title},
Volume = {3},
Year = {2000}}
\end{filecontents}
\usepackage[]{apacite}
\begin{document}
\begin{frame}
\frametitle{A citation}
\shortcite{TestCite2000}
\end{frame}
\begin{frame}
\frametitle{References}
\bibliographystyle{apacite}
\bibliography{\jobname}
\end{frame}
\end{document}
答案2
您可以使用套件 \usepackage[natbibapa]{apacite} 進行簡短引用
檢查 apacite 套件文件:https://ctan.math.illinois.edu/macros/latex/contrib/apacite/apacite.pdf
“對於短作者列表沒有單獨的命令,但可以通過構造 \shortcites{key}\citet{key} 來獲取”