更改表格中引用的环境

更改表格中引用的环境

我使用方括号中的非上标数字进行引用,就像:

在此处输入图片描述

使用代码:

y de los tres momentos de inercia \cite{Spec}. Para el caso de una

我在序言中声明:

\usepackage[longnamesfirst]{natbib}
\setcitestyle{square}

然后,在文档内部:

\begin{document}

\bibliographystyle{ieeetr}
\bibliography{./bibliography}

bibliography.bib我在同一个文件夹中有一个文件。

在表格中,非上标引用不是一个好的解决方案:

在此处输入图片描述

代码:

\begin{table}
\begin{tabular}{lllll}
\cline{2-3}
\multicolumn{1}{l|}{}   & \multicolumn{1}{l|}{CD}   & \multicolumn{1}{l|}{EF}   &  &  \\ \cline{1-3}
\multicolumn{1}{|l|}{a} & \multicolumn{1}{l|}{5.45\cite{Spec1,Spec2}} &      \multicolumn{1}{l|}{25.8 \cite{Spec3}} &  &  \\ \cline{1-3}
\multicolumn{1}{|l|}{b} & \multicolumn{1}{l|}{44.2} & \multicolumn{1}{l|}{3.21 \cite{Spec4,Spec5}} &  &  \\ \cline{1-3}
                    &                           &                           &  &
\end{tabular}
\end{table}

最好使用上标方括号来引用。

是否可以在每个表格中创建一个特殊的环境,以表明引用应该出现在上标方括号中?

以下是我的序言:

\documentclass[12pt,a4paper,twoside,openany]{report}
\usepackage[left=2.5cm,top=2.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\parindent 1 true cm
\usepackage{graphicx}
\usepackage{eufrak}
\usepackage[spanish]{babel}
\usepackage[latin1]{inputenc}  
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage{float}
\usepackage{color}
\usepackage[longnamesfirst,super]{natbib} 
\setcitestyle{square}
\usepackage{fancyhdr}   
\pagestyle{fancy}                                        
\renewcommand{\chaptermark}[1]{\markboth{\thechapter .\ #1}{}}             
\renewcommand{\sectionmark}[1]{\markright{\thesection .\ #1}{}}
\lhead{\nouppercase}
\rhead{\nouppercase}
\fancyhead[LE]{{\sf \leftmark}}                             
\fancyhead[RE]{}
\fancyhead[RO]{{\sf \rightmark}}
\fancyhead[LO]{}                                                
\fancyfoot[LE,RO]{\thepage}                                           
\fancyfoot[CE,CO]{}                                                         
\renewcommand{\headrulewidth}{0.0pt}                                
\renewcommand{\baselinestretch}{1.25}
\usepackage{adjustbox}
\usepackage{enumerate}
\usepackage{courier}
\usepackage{caption}
\usepackage[version=3]{mhchem}
\usepackage{rotating}
\usepackage[percent]{overpic}
\captionsetup{font={small}}
\begin{document}

谢谢。

答案1

您可以\citetable环境中重新定义;etoolbox这很容易。

\documentclass[12pt,a4paper,twoside,openany]{report}
\usepackage[left=2.5cm,top=2.5cm,right=2.5cm,bottom=2.5cm]{geometry}
\usepackage{graphicx}
\usepackage{eufrak}
\usepackage[spanish]{babel}
\usepackage[latin1]{inputenc}  
\usepackage[T1]{fontenc}
\usepackage{times}
\usepackage{amsmath}
\usepackage{multirow}
\usepackage{float}
\usepackage{color}
\usepackage[numbers]{natbib} 
\setcitestyle{square}
\usepackage{fancyhdr}   
\pagestyle{fancy}                                        
\renewcommand{\chaptermark}[1]{\markboth{\thechapter .\ #1}{}}             
\renewcommand{\sectionmark}[1]{\markright{\thesection .\ #1}{}}
\lhead{\nouppercase}
\rhead{\nouppercase}
\fancyhead[LE]{{\sf \leftmark}}                             
\fancyhead[RE]{}
\fancyhead[RO]{{\sf \rightmark}}
\fancyhead[LO]{}                                                
\fancyfoot[LE,RO]{\thepage}                                           
\fancyfoot[CE,CO]{}                                                         
\renewcommand{\headrulewidth}{0.0pt}                                
\renewcommand{\baselinestretch}{1.25}
\usepackage{adjustbox}
\usepackage{enumerate}
\usepackage{courier}
\usepackage{caption}
\usepackage[version=3]{mhchem}
\usepackage{rotating}
\usepackage[percent]{overpic}
\captionsetup{font={small}}
\usepackage{letltxmacro,etoolbox,booktabs}

\LetLtxMacro{\originalcite}{\cite}
\def\tablecite#1#{%
  \def\pretablecite{#1}%
  \tableciteaux}
\def\tableciteaux#1{%
  \textsuperscript{\expandafter\originalcite\pretablecite{#1}}%
}
\AtBeginEnvironment{table}{\let\cite\tablecite}

\begin{document}

A citation \cite{article-full}

\begin{table}
\begin{tabular}{ll}
\toprule
Something & Foo \\
\midrule
a\cite{whole-journal,booklet-full} & b\cite{manual-full}  \\
\bottomrule
\end{tabular}
\end{table}

\bibliographystyle{ieeetr}
\bibliography{xampl}

\end{document}

当然,longnamesfirst对于数字引用来说是没有意义的。

在此处输入图片描述

相关内容