我有以下代码:
\documentclass{scrbook}
\usepackage[linesnumbered,ruled]{algorithm2e}
\begin{document}
AAAA
BBBB
\begin{algorithm}
\vspace*{-1cm}
\caption{My Caption\ldots}
My Code
\end{algorithm}
\end{document}
它不会将带有标题“我的标题”的“我的代码”部分向上移动 - 但它适用于图形环境 - 有什么建议可以如何为算法做到这一点?
注意:我知道一种在 \begin{algorithm} 上方指定 \vpsace* 的方法,但如果它周围有文本,那么它将不起作用 - 它会弄乱文本,并且不会移动算法。
答案1
您正在谈论必须保留的算法。
因此你有两种可能性。
用作
H
浮动说明符。这样,algorithm
环境周围的所有间距都将被删除。\documentclass{scrbook} \usepackage[linesnumbered,ruled]{algorithm2e} \begin{document} AAAA BBBB \begin{algorithm}[H] \caption{My Caption\ldots} My Code \end{algorithm} CCCC \end{document}
用作
h
浮点说明符并在本地重新定义长度\intextsep
(使用时表示浮点数和文本之间的距离h
)。\documentclass{scrbook} \usepackage[linesnumbered,ruled]{algorithm2e} \begin{document} AAAA BBBB {\setlength{\intextsep}{0pt} \begin{algorithm}[h] \caption{My Caption\ldots} My Code \end{algorithm} } CCCC \end{document}