如何确保使用命令封装的英文文本与前后文本之间有正确的间距

发布于 2025-04-03 00:07:22

因为一些实际需求,所以需要对一些英文文本样式进行简单的命令封装。如将文本及样式\emph{AAA}定义为\mycommond,然后在正文中通过使用\mycommond进行调用。但是这一方式存在一定问题,也就是通过此命令生成的文本,无法确保与前后文本之间存在正确的间距。所以请问如何避免手动加空格来解决这一问题?
image.png

\documentclass{article}

\newcommand\mycommond{\emph{AAA}}

\begin{document}
  \emph{AAA} BBB     %斜体AAA之后有空格
  
  \mycommond BBB  %以命令形式调用时,虽然也产生斜体AAA,但是之后没有空格
\end{document}

查看更多

关注者
0
被浏览
85
1 个回答
始//終
始//終 1天前
这个人很勤快,啥也没写

交流群里大佬回复,这个现象是因为命令作为控制序列,会自动吞掉其后的一个空格。所以解决方案就是让这个控制序列提前吞掉一个东西,那么就不会把随后的空格给吞掉。比如这里可以在\mycommond之后加入{},就可以实现这个效果。如图:
image.png

\documentclass{article}

\newcommand\mycommond{\emph{AAA}}

\begin{document}
  \emph{AAA} BBB     %斜体AAA之后有空格
  
  \mycommond BBB  %以命令形式调用时,虽然也产生斜体AAA,但是之后没有空格
  
  \mycommond{} BBB  
\end{document}

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览