编译时出现奇怪的格式问题

编译时出现奇怪的格式问题

当我写作时

${\cal{A}} = \textbf{y}_{i}, \forall i = 1,\cdots, n^{2}$, 

我得到:

在此处输入图片描述

但是,如果我删除周围的花括号\cal{A},而是写

$\cal{A} = \textbf{y}_{i}, \forall i = 1,\cdots, n^{2}$, 

然后我得到

在此处输入图片描述

我只是真的很好奇是什么导致了这个有趣的问题。

答案1

你写了,

我只是很好奇是什么导致了这个有趣的问题

简短回答:在 1994 年以后编写的任何 LaTeX 文档中使用\cal[!] 要么是一场即将发生的事故(就像您的示例代码一样),要么根本不起作用(比如,如果memoir使用了文档类)。

较长的答案:\cal是纯 TeX 字体切换命令,已在某些(但不是全部)LaTeX2e 文档类中实现,作为传统命令,以简化从 LaTeX209 到 LaTeX2e 的转换。(该转换发生在 1994 年。)因为\cal转变而不是接受参数的命令,其范围是直到当前 TeX 组的末尾因此,通过写作\cal{A},人们创造了一种错误的印象,即只A受任何事物的影响\cal;事实并非如此,正如你(重新)发现的那样。必须用花括号括起来\cal A——即写{\cal A}——以避免造成印刷灾难。你真的不过,应该做的是写\mathcal{A}。 (在这方面,\cal与其他传统/PlainTeX 字体切换命令(例如\bf\it\sl\sc)没有什么不同。)

附加评论:您的示例代码包含一个不准确之处和一个印刷上有问题的选择。

  • 在数学模式下书写\textbf{y}迟早会给你带来麻烦,尤其是当文档的文本和数学字体看起来不一样时。你应该\textbf{y}在文本模式和\mathbf{y}数学模式下书写。

  • 1,\cdots, n^{2}从排版角度来说,写有点不合常规,说得客气一点。最好写成1,\ldots, n^{2}或者,更好的是1,\dots, n^{2}-- 让 LaTeX 决定是否生成排版省略号,该省略号位于基线还是数学线上。(数学线是-放置数学(减号)符号的地方。)\cdots应该用来省略一系列二进制运算,如\prod_{i=1}^N a_i = a_1 a_2 \cdots a_N。相反,\ldots应该用来缩写逗号分隔的项目列表。

总而言之,请考虑更换

${\cal{A}} = \textbf{y}_{i}, \forall i = 1,\cdots, n^{2}$,

$\mathcal{A} = \mathbf{y}_{i} \quad \forall i = 1,\dots, n^{2}$,

相关内容