我的图形或表格交叉引用的编号与下一个字符(单词、逗号等)之间出现了错误的空格,如下所示:
这是来自 Wiley 的代码:
\documentclass[AMA,STIX1COL]{WileyNJD-v2}
\articletype{Article Type}%
\received{26 April 2016}
\revised{6 June 2016}
\accepted{6 June 2016}
\raggedbottom
\begin{document}
The Figure \ref{fig2}
\begin{figure*}
\centerline{\includegraphics[width=342pt,height=9pc,draft]{empty}}
\caption{This is the sample figure caption.\label{fig2}}
\end{figure*}
\end{document}
答案1
更新:我发现了导致 user221420 所述问题的命令!在 Wiley 提供的 .cls 文件的第 530 行中,以下代码修改了自定义行为:
\renewcommand{\thefigure}{\arabic{figure}\enspace }
\enspace(增加 0.5 em)是罪魁祸首。第 532 行对表格也做了同样的操作。虽然我不确定是否应该修改它,因为它似乎是有意为之,但可以通过放置以下内容从 .tex 文档内部(即不触及 .cls 文件)更改它
\renewcommand{\thefigure}{\arabic{figure}}
\DeclareCaptionLabelSeparator{enspace}{\enspace}
\captionsetup[figure]{labelformat=simple, labelsep=enspace, skip=10pt, labelfont=bf}
\renewcommand{\thetable}{\arabic{figure}}
\captionsetup[table]{labelformat=simple, labelsep=enspace, skip=10pt, labelfont=bf}
在序言中。抱歉,下面没有回答,我是新来的,没有足够的声誉来评论可重复性。所以我把它作为一个答案,并添加了我自己的发现。
原始帖子:
与 Marijn 相反,我可以使用他的 MWE 复制 user221420 报告的确切行为(并在引用调用后添加一些实际文本)。我在必须使用 WileyNJD-v2 的文档中遇到了同样的问题,经过几个小时的折腾,我终于放弃了,因为问题似乎源于 WileyNJD-v2.cls 文件本身,而更改它不是一个选择。我仍然想知道到底是什么导致了这个问题,所以以下是我迄今为止的发现:
- 问题不是出在编译器上。我测试了 Texmaker、TeXstudio 和 TeXworks。
- 缩放级别和 PDF 查看器不起作用。所有内部查看器和 Adobe Acrobat Reader 都出现同样的问题。
- 在 \caption{} 内部或之后添加 \label{...} 函数并没有区别。
- 用 %% 结束包含 \label{...} 的相应行没有任何区别。
- .cls 文件中的每一行都以 % 结尾没有任何区别
我还发现 Wiley 提供的编译演示文件(Marijn 提供的链接下的 AMA-stix/Documents/wileyNJD-Doc.pdf)存在同样的问题(参见第 2 页)。
再次强调,更改 WileyNJD-v2.cls 文件不是一个选项,在其中硬编码负空间也不是一个选项,因为它可能会弄乱出版商的排版。但是,如果能找出导致问题的确切原因,就有可能从 .tex 文件内部修复它,因此任何有关此问题的有用评论都将非常值得赞赏。
附言:我正在使用 MikTeX。