斜体文本中的数学表达式右侧的空间比左侧的空间大

斜体文本中的数学表达式右侧的空间比左侧的空间大

最小可重现示例:

\documentclass{article}

\usepackage{amsmath}
\newtheorem{lemma}{Lemma}

\begin{document}

\begin{lemma}
  Suppose that \(a\) and \(b\) are integers.
\end{lemma}

\end{document}

在此处输入图片描述

这里,数学表达式被放在斜体上下文中。但是,它们似乎在右侧比左侧获得更多的间距。这个观察是正确的吗?如果是这样,我可以解决这个问题(而不必\!每次都手动添加类似的东西)吗?

答案1

这个观察是正确的吗?

真理就像美丽一样,存在于旁观者的眼中......

如果你添加\showoutput到你的文档中,你会看到

....\OT1/cmr/m/it/10 t
....\glue 3.57774 plus 1.53333 minus 1.0222
....\mathon
....\OML/cmm/m/it/10 a
....\mathoff
....\glue 3.57774 plus 1.53333 minus 1.0222
....\OT1/cmr/m/it/10 a
....\OT1/cmr/m/it/10 n
....\OT1/cmr/m/it/10 d
....\glue 3.57774 plus 1.53333 minus 1.0222
....\mathon
....\OML/cmm/m/it/10 b
....\mathoff
....\glue 3.57774 plus 1.53333 minus 1.0222
....\OT1/cmr/m/it/10 a

在此处输入图片描述

因此,就 TeX 而言,数学字母的两侧只有一个正常的单词空间,但是 TeX 定位的是矩形框,而您看到的是倾斜的非矩形字母。我个人会放手,但(本质上与斜体校正相反\/)您可以插入一些细的负空间,但您必须“手动”执行此操作 TeX 没有关于字母形状的信息,因此在这里无法真正提供帮助。

答案2

你写了,

这里,数学表达式ab被放在斜体上下文中。但是,它们在右侧的间距似乎比左侧的间距大。这个观察是正确的吗?

答案在很大程度上取决于斜体组中以数学模式还是文本斜体模式呈现的字母。以下是几个示例 - 黑色部分使用数学模式,而叠加的红色部分使用文本斜体模式:

在此处输入图片描述

对于你在帖子中考虑的 ab 示例,它a确实,和两边的组合空格对于和b来说是大致相同的,并且与文本斜体情况相比,数学模式情况存在更多的不对称性 - 左侧的空格较少,右侧的空格较多。ab

但更一般地说,水平偏移的确切差异取决于在数学模式下渲染哪些字母在紧接于数学模式材料之前的空间之前的字母上(如果有)。

\documentclass[border=1pt,preview]{standalone}
\usepackage{xcolor}
\newlength\mylen

\newcommand\blurba[2]{\textit{that $#1$ and $#2$ are}}
\newcommand\blurbb[2]{\textit{that #1 and #2 are}}
\newcommand\mykern[2]{\settowidth{\mylen}{\blurba{#1}{#2}}%
                      \kern-\mylen}
\newcommand\blurb[2]{\blurba{#1}{#2}%
                     \mykern{#1}{#2}%
                     \textcolor{red}{%
                     \blurbb{#1}{#2}}}

\begin{document}
\obeylines
\blurb{a}{b}
\blurb{d}{l}
\blurb{u}{v}
\blurb{x}{z}
\end{document} 

答案3

我已经确认这纯粹是一个字体设计问题,方法是\usepackage{mathptmx}

在此处输入图片描述

现在这个问题已经不存在了。

相关内容