![避免在 latex 中使用 $ 后出现大空格](https://linux22.com/image/395053/%E9%81%BF%E5%85%8D%E5%9C%A8%20latex%20%E4%B8%AD%E4%BD%BF%E7%94%A8%20%24%20%E5%90%8E%E5%87%BA%E7%8E%B0%E5%A4%A7%E7%A9%BA%E6%A0%BC.png)
我使用 $ 符号将论文中的某些文本变为斜体。
\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}
答案1
不要这样做!使用\textit
or \itshape
(或者更好的是,编写自己的宏,使用语义上有意义的名称,将其扩展为\textit
or \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}
(显然,您应该给出\mymacro
一个能反映其含义的不同的名字。)