![序言中有没有办法修改/减少字母与后跟闭括号(和)之间的空白?](https://linux22.com/image/453699/%E5%BA%8F%E8%A8%80%E4%B8%AD%E6%9C%89%E6%B2%A1%E6%9C%89%E5%8A%9E%E6%B3%95%E4%BF%AE%E6%94%B9%2F%E5%87%8F%E5%B0%91%E5%AD%97%E6%AF%8D%E4%B8%8E%E5%90%8E%E8%B7%9F%E9%97%AD%E6%8B%AC%E5%8F%B7%EF%BC%88%E5%92%8C%EF%BC%89%E4%B9%8B%E9%97%B4%E7%9A%84%E7%A9%BA%E7%99%BD%EF%BC%9F.png)
对我来说,我认为使用and 时,与仅使用 and\left(
相比\right)
,Latex 在函数名称和其参数之间留了太多空格。我希望获得与第二种情况相同的空间。(
)
问题是我使用的 Latex 是由 CAS 软件生成的,它总是自动生成\left(
。\right)
有时这是真正需要的,有时则不需要。
因此,在不更改代码本身的情况下,有没有办法使空间与仅使用(
和时相同)
?或者以某种方式减少它?可能是使用一些智能宏或一些包?我只能更改序言,但不想在之后编辑任何内容,\begin{document}
因为生成的乳胶在白天或我重新运行 CAS 程序时会多次更改。
以下是比较
\documentclass[12pt]{article}
\begin{document}
\[
Y \left(X \right)
\]
\[
y \left(x \right)
\]
\end{document}
对阵
\documentclass[12pt]{article}
\begin{document}
\[
Y (X)
\]
\[
y (x)
\]
\end{document}
全部使用 进行编译lualatex foo.tex
。
Y
我们看到本例中的函数名称和其参数之间的水平间距()
在使用时较小(
,)
这是我更喜欢的。
但每次都无法修改生成的代码。\left( and \right)
即使括号内是单个字母,而不是需要调整括号高度以使其内容合适的复杂表达式,\left(
Maple和 Mathematica 也总是会生成\right)
代码。我使用的 Scientific Word 也是这样,它的所有 Latex 都使用\left( and \right)
。
TL 2021
答案1
您可以设置
\Umathordinnerspacing\textstyle=0mu
\Umathordinnerspacing\displaystyle=0mu
在 luaTeX 中。但是使用 Unicode Math 时会出现新问题:Ord 原子和下一个 Inner 原子后的斜体校正未包含在内。设置\mathitalicsmode=1
没有帮助。
顺便说一句:这是你的 CAS 软件的错误,你可以尝试报告它。