1.为何会出现左右间距不相等的情况?
因为你的输入中,\mynwarrow{}两边不对称.\mynwarrow{}两边都都加上\,,应该就对称了吧。
aafff\,\mynwarrow{}\,gggbbbLaTeX 遇到连续的多个空格,它就认为是一个空格。但如果我们一个空格都不输入,一般它不会为我们加空格的。所以第二行改为aafff \mynwarrow{} gggbbb,应该会对称。
你补充的代码里,\mynwarrow{}的定义里,前面加了\,,后面没加。
2.(1)如果这个命令是一个公开宏包的公开命令,我觉得就按原定义就好。如果别人觉得不好看,他会自己加他觉得好看的空格的。比如\LaTeX{}就没有为我们加空格。
(2)如果你这个命令是你自己用:
(a) 如果你输入命令时,习惯在命令前后都加空格。可以在\mynwarrow{}的定义前后都加上\hspace{-0.167em}。
(b) 如果你输入命令时,命令前后都不加空格。可以在\mynwarrow{}的定义前后都加上\,。



问 自行绘制的符号左右的间距控制?