我正在准备一份稿件提交给 IUCr 期刊。通过使用提供的模板 (http://journals.iucr.org/s/services/latexstyle.html),其中documentclass
设置为iucr
,我发现使用 创建的算法框algorithm2e
没有显示标题。图形的标题显示正常。切换到 后\documentclass{article}
,算法框标题恢复正常。
MWE 列表如下:
\documentclass[preprint]{iucr}
\usepackage{algorithm2e}
\usepackage{amsmath}
\RestyleAlgo{boxruled}
\begin{document}
\begin{algorithm}[H]
\SetAlgoLined
\KwIn{$g$: the scan grid configuration}
\KwIn{$\Theta$: the list of projection angles}
\For{$z$ in $g_z$}{
\For{$y$ in $g_y$}{
\For{$x$ in $g_x$}{
\For{$\theta$ in $\Theta$}{
Acquire projection image
}
}
}
}
End Acquisition
\label{box:acq_local}
\caption{Algorithm for image acquisition used for local tomogram stitching.}
\end{algorithm}
\end{document}
打印的算法框看起来像这样 - 虽然\caption
提供了,但在pdf中缺少。
cls
可以通过上面的链接找到 IUCr 模板的文件。
任何想法都值得赞赏。
答案1
该类根据浮点数是图形还是表格(或特定于类的环境)iucr
重新定义。不幸的是,其他类型的浮点数(例如算法)没有默认情况,这意味着对于这些浮点数,的定义是空白的。\caption
example
\caption
您可以为标题提供自定义命令(借用自article
),并将其用于除图形和表格之外的所有浮点数。看来此解决方案保留了编号和正确的引用(见下面的示例)。
请注意,期刊可能对自定义标题的位置、字体样式、缩写等有其他要求。另外:最好向期刊编辑提及应在其文档类中解决此问题。
梅威瑟:
\documentclass[preprint]{iucr}
\usepackage{algorithm2e}
\usepackage{amsmath}
\RestyleAlgo{boxruled}
\makeatletter
\newcommand{\mycaption}{%
\ifx \@captype \@undefined \@latex@error {\noexpand \caption outside float}\@ehd \expandafter \@gobble \else \refstepcounter \@captype \expandafter \@firstofone \fi {\@dblarg {\@caption \@captype }}%
}%
\makeatother
\begin{document}
Consider Figures \ref{fig:first} and \ref{fig:second} and Algorithms \ref{box:acq_local} and \ref{box:acq_short}.
\begin{figure}
\fbox{A figure}
\caption{Figure caption}
\label{fig:first}
\end{figure}
\begin{algorithm}
\SetAlgoLined
\KwIn{$g$: the scan grid configuration}
\KwIn{$\Theta$: the list of projection angles}
\For{$z$ in $g_z$}{
\For{$y$ in $g_y$}{
\For{$x$ in $g_x$}{
\For{$\theta$ in $\Theta$}{
Acquire projection image
}
}
}
}
End Acquisition
\mycaption{Algorithm for image acquisition used for local tomogram stitching.}
\label{box:acq_local}
\end{algorithm}
\begin{figure}
\fbox{Another figure}
\caption{Other figure caption}
\label{fig:second}
\end{figure}
\begin{algorithm}
\SetAlgoLined
\KwIn{$g$: the scan grid configuration}
\KwIn{$\Theta$: the list of projection angles}
Do Magic\;
End Acquisition
\mycaption{Short algorithm for image acquisition.}
\label{box:acq_short}
\end{algorithm}
\end{document}
结果: