我的伪代码末尾有一个额外的水平空白,我无法使用负数 \hspace 将其删除。这是我的最小代码:
\documentclass[journal,transmag]{IEEEtran}
\usepackage[ruled,linesnumbered]{algorithm2e}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
something.
%
\SetKwInput{KwInputs}{Inputs}
\SetKwInput{KwOutput}{Output}
\SetKwInput{kwInit}{Init}
\SetAlCapSkip{1em}
\SetNlSty{textbf}{}{}
\SetNlSkip{0.8em}
\IncMargin{1em}
\begin{algorithm}[t]
\DontPrintSemicolon
\Indm
\KwInputs{inputs}
\KwOutput{outputs}
\Indp
$\theta_k=\tau_{k}$\;
\end{algorithm}
something else.
\end{document}
我怎样才能去掉“其他东西”前面的空格?
谢谢。
答案1
%
至之后的每一行末尾\begin{algorithm}
都留一个空格。
\documentclass[journal,transmag]{IEEEtran}
\usepackage[ruled,linesnumbered]{algorithm2e}
\usepackage{amsmath}
\usepackage{amssymb}
\begin{document}
something.
%
\SetKwInput{KwInputs}{Inputs}%
\SetKwInput{KwOutput}{Output}%
\SetKwInput{kwInit}{Init}%
\SetAlCapSkip{1em}%
\SetNlSty{textbf}{}{}%
\SetNlSkip{0.8em}%
\IncMargin{1em}%
\begin{algorithm}[t]
\DontPrintSemicolon
\Indm
\KwInputs{inputs}
\KwOutput{outputs}
\Indp
$\theta_k=\tau_{k}$\;
\end{algorithm}
something else.
something. something else. % for checking
\end{document}
不过,我通常建议放置这样的漂浮物体段落之间,即前面有一个空行,下面有一个空行。因此,对于你的情况,
something. Something else.
\SetKwInput{KwInputs}{Inputs}
\SetKwInput{KwOutput}{Output}
\SetKwInput{kwInit}{Init}
\SetAlCapSkip{1em}
\SetNlSty{textbf}{}{}
\SetNlSkip{0.8em}
\IncMargin{1em}
\begin{algorithm}[t]
[...]
\end{algorithm}
Another paragraph starts here.
在这种情况下,行尾产生的空格不会产生任何作用。