避免在 latex 中使用 $ 后出现大空格

避免在 latex 中使用 $ 后出现大空格

我使用 $ 符号将论文中的某些文本变为斜体。

\documentclass[conference]{IEEEtran}

\begin{document}

Hence, even though both 1-$doPly$ and 2-$doPly$ declare to call the interface 
$getAttackedPostion$ of class $EnPassantPly$ 
($((EnPassantPly)ply).getAttackedPosition()$), they actually do call its 
implementation in class $EnPassantPlyImpl$.

\end{document}

我遇到的问题是,这会导致我的 pdf 文档中出现很大的空白,如图所示,如何避免出现这么大的空间而改为使用小的空间呢? 在此处输入图片描述

答案1

不要这样做!使用\textitor \itshape(或者更好的是,编写自己的宏,使用语义上有意义的名称,将其扩展为\textitor \itshape)来显示斜体文本。这也会解决您的间距问题。

正如评论中正确指出的那样,括号应该仍然竖直。embrac包可以帮你解决这个问题。根据字体的不同,你必须先找到正确的字距(请参阅文档以获取指针)。对于 MWE 中的字体,没有额外的字距效果很好。

我把的效果限制embrac到了\mymacro这里,可能不一定是你想要的。

\documentclass[conference]{IEEEtran}

\usepackage{embrac}
\RenewEmph{(}{)}
\EmbracOff

\newcommand*\mymacro[1]{{\EmbracOn\textit{#1}}}

\begin{document}

Hence, even though both 1-\mymacro{doPly} and 2-\mymacro{doPly} declare to call the interface \mymacro{getAttackedPostion} of class \mymacro{EnPassantPly} (\mymacro{((EnPassantPly)ply).getAttackedPosition()}), they actually do call its implementation in class \mymacro{EnPassantPlyImpl}.

\end{document}

MWE 输出

(显然,您应该给出\mymacro一个能反映其含义的不同的名字。)

相关内容