我有一份包含几个表格的文档,这些表格的标题格式如下
我使用
\usepackage[format=plain, justification=raggedright,singlelinecheck=true]{caption}
\captionsetup[table]{labelsep=newline, textfont=it, singlelinecheck=false, margin=1em}
并且我希望对算法使用相同的布局。我确实从 package-readme 中发现了这一点,这一页我需要
\usepackage[plainruled]{algorithm2e}
删除标题上方的顶部规则并得到:
接下来,我明白我需要定义自己的宏style
才能使用
\SetAlgoCaptionLayout{style}
但我很困惑如何创建宏以及如何左对齐,在脚注大小中使用 normalfont 作为算法标题,插入换行符,以及如何将标题文本斜体化。
梅威瑟:
\documentclass{article}
\usepackage[plainruled]{algorithm2e}
\begin{document}
\begin{algorithm}
{\footnotesize
\caption{An example}
some text\;
}
\end{algorithm}
\end{document}
答案1
明白了。您可以重新定义定义顶部规则的函数。它并不完美,但有效。
\documentclass{article}
\usepackage[algoruled]{algorithm2e}
% Removes the top rule above caption see l.2531 of algorithm2e.sty
\makeatletter
\def\@algocf@pre@algoruled{}%
\makeatother
% Changes the caption font to italic
\renewcommand{\AlCapNameFnt}{\footnotesize\itshape}
% Removes bold font Algorithm
\renewcommand{\AlCapFnt}{\footnotesize\normalfont}
% Replaces ":" with a linebreak after Algorithm n°xxx
\SetAlgoCaptionSeparator{\\}
\begin{document}
\begin{algorithm}
{\footnotesize
\caption{An example}
some text\;
}
\end{algorithm}
\end{document}
答案2
以下还会将\footnotesize
字体大小添加到您的algorithm
环境中:
\documentclass{article}
\usepackage{fourier}
\usepackage[ruled]{algorithm2e}
\SetAlCapFnt{\normalfont\footnotesize}% Set caption font
\SetAlgoCaptionSeparator{\par\nobreak}% Set caption separator
\SetAlCapNameFnt{\unskip\itshape\footnotesize}% Set caption name font
\makeatletter
\def\@algocf@pre@ruled{}% Remove rule above caption
\let\old@algocf@start\@algocf@start
\renewcommand{\@algocf@start}{\old@algocf@start\footnotesize}
\makeatother
\begin{document}
\begin{algorithm}
\caption{An example}
some text\;
\end{algorithm}
\end{document}