![用乳胶准备的文档中各章节缺少交叉引用编号](https://linux22.com/image/317607/%E7%94%A8%E4%B9%B3%E8%83%B6%E5%87%86%E5%A4%87%E7%9A%84%E6%96%87%E6%A1%A3%E4%B8%AD%E5%90%84%E7%AB%A0%E8%8A%82%E7%BC%BA%E5%B0%91%E4%BA%A4%E5%8F%89%E5%BC%95%E7%94%A8%E7%BC%96%E5%8F%B7.png)
我正在对用 latex 准备的文档使用交叉引用。文档经过编译,所有包含的图表、表格和公式都得到了适当的交叉引用。不太可能,在我使用 `label{a} for the label and for referencing I am using
\ref{a}` 之前。
当我需要对章节和子章节进行交叉引用时,就会出现问题。文件编译时没有错误,但缺少用作特定章节引用的编号,如下所示:
\section{intro}\label{s1}
Referring to section~\ref{s1}.
编译后它会显示一条消息,如下所示
Referring to section .
它没有显示引用的数字。我需要添加任何包还是什么?该模板是根据 Rinton Press Publishers 的指南准备的。
编辑- 完整代码:
\documentclass[twoside]{article}
\usepackage{jwe}
\begin{document}
\section{Intro}\label{s1}
\noindent I am a boy.
\section{Two}
\noindent Related Works referring to Section~\ref{s1}.
\end{document}
答案1
这Web 工程杂志的 LaTeX 代码完全重新定义了分段单元,使得使用默认系统无法引用它们\label
。\ref
以下是分段命令的视图:
%--------------------------------------------------------------------------
% section commands
\newcounter{sectionc}\newcounter{subsectionc}\newcounter{subsubsectionc}
\renewcommand{\section}[1] {\vspace{12pt}\addtocounter{sectionc}{1}
\setcounter{subsectionc}{0}\setcounter{subsubsectionc}{0}\noindent
{\bf\thesectionc. #1}\par\vspace{5pt}}
\renewcommand{\subsection}[1] {\vspace{12pt}\addtocounter{subsectionc}{1}
\setcounter{subsubsectionc}{0}\noindent
{\bf\thesectionc.\thesubsectionc. {\kern1pt \bfit #1}}\par\vspace{5pt}}
\renewcommand{\subsubsection}[1] {\vspace{12pt}\addtocounter{subsubsectionc}{1}
\noindent{\rm\thesectionc.\thesubsectionc.\thesubsubsectionc.
{\kern1pt \it #1}}\par\vspace{5pt}}
\newcommand{\nonumsection}[1] {\vspace{12pt}\noindent{\bf #1}
\par\vspace{5pt}}
他们不仅使用旧字体声明,没有恰当的 \refstepcounter
捕获\label
s。相反,该包使用\addtocounter{<cntr>}{1}
。首先,您必须重新定义\section
为使用\refstepcounter
而不是\addtocounter
。但是,由于这是用于期刊提交,因此您应该真正质疑这是否是有意为之。
\section
以下是在最小示例中对 included的正确重新定义:
\documentclass{article}
\usepackage{jwe}
\makeatletter
\@addtoreset{subsectionc}{sectionc}
\@addtoreset{subsubsectionc}{subsectionc}
\makeatother
\renewcommand{\section}[1]{%
\par\vspace{12pt}%
\refstepcounter{sectionc}% This allows you to use \label and \ref properly
\noindent{\bfseries\thesectionc. #1}%
\par\vspace{5pt}}
\begin{document}
\section{Intro}\label{s1}
\noindent I am a boy.
\section{Two}
\noindent Related Works referring to Section~\ref{s1}.
\end{document}
我的想法是,期刊可能希望人们手动做这些参考,这看起来很尴尬。
联系期刊并告诉他们需要做出改变。或者至少问问他们为什么这样做。