如何避免带有参数的宏后面出现空格?

如何避免带有参数的宏后面出现空格?

我有一个宏(简化),定义如下:

\newcommand{\mymacro}[1]{
     %use #1
     \par\noindent%
}

我希望能够使用它

\mymacro{Arg 1}
Beginning of paragraph

但是,当我执行此操作时,我的输出 PDF 文件在之前有一点水平空间B

为了摆脱它,我必须称它为

\mymacro{Arg 1}Beginning of paragraph

这并不理想。

如果我改为\mymacro不接受任何参数,空间也会消失——但我需要能够接受参数。

答案1

\par\noindent\ignorespaces在宏的定义中使用。

\documentclass{article}

\newcommand{\mymacro}[1]{%
  use #1%
  \par\noindent\ignorespaces
}

\usepackage{lipsum}

\begin{document}

\mymacro{Arg 1}
Beginning of paragraph: \lipsum[1]

\end{document}

在此处输入图片描述

相关内容