以下代码中可能缺少什么或出现错误?textstyle 和 displaystyle 的大小没有区别

以下代码中可能缺少什么或出现错误?textstyle 和 displaystyle 的大小没有区别
\documentclass[a4paper]{article}

\usepackage{slashed}

\usepackage{amsmath}

\usepackage{mathabx} % \degree\third

\usepackage{MnSymbol}% \plus

% Latex standard:      \times

\newcommand{\boto}{\ensuremath{{\declareslashed{\mathop}{\degree}{-.01}{.4}{\bot}\slashed{\bot}}}}

\newcommand{\oog}{\ensuremath{{\declareslashed{\mathop}{\times}{0}{0}{\plus}\slashed{\plus}}}}

\newcommand{\Letne}[1]{\ensuremath{{\declareslashed{\mathop}{\third}{-.2}{-1.3}{#1}\slashed{#1}}}}

\begin{document}


\[\Letne{\oog}\textstyle\Letne{\oog} \scriptstyle\Letne {\oog}\scriptscriptstyle\Letne{\oog}\]

\[\Letne{\boto}\textstyle\Letne{\boto}\scriptstyle\Letne{\boto}\scriptscriptstyle\Letne{\boto}\]

\end{document}

答案1

基于字体信息,当 时,一些符号的大小能够增大\displaystyle; 就是这种情况\sum\bigcup以及类似的“大运算符”。

摘自 TeXbook 第 443 页底部和第 444 页顶部:

13.如果当前项是 Op 原子,则将此原子标记为有限制(如果它已标记为 )\limits,或者如果它已标记为\displaylimitsC>电视。如果原子核不是符号,则设置δ←0并转到规则13a。否则如果C>电视如果核符号的字体中有后继,则移至后继。(此时 ∑ 和 ∫ 等运算符的显示样式会变为更大的尺寸。)

从规则中可以清楚地看出,如果 Op 原子不是由单个符号组成,或者该符号没有后继(通常是其更大版本),则它将以相同的形式打印在\displaystyle和中\textstyle,两者都用于\textfont<math family>排版。

因此,即使声明了\mathop\Delta,这个符号也不会增长,因为\textfont0(声明符号所属的位置)没有它的后继信息。相反,我们可以在cmex10.pl(的人类可读版本cmex10.pl)中看到

(CHARACTER O 120
   (CHARWD R 1.055559)
   (CHARDP R 1.000013)
   (NEXTLARGER O 130)
   )

由于\sum定义为\mathchar"1350,表示“数学运算符”(1)、“数学系列 3”、“槽"50”(八进制`120),我们在字体信息中看到它在槽(八进制)处有一个后继`130

如果我们查看cmr10.pl(检查后,\Delta\mathchar"7001“变量系列”(7),“数学系列 0”,“插槽“01”,我们会看到

(CHARACTER O 0
   (CHARWD R 0.625002)
   (CHARHT R 0.683332)
   )

无继任者。

答案2

问题似乎更清楚了:我忽略了存在 2 种运算符的事实,一种有 4 种大小,一种有 3 种大小,后面的运算符的 displaystyle 和 textstyle 大小相同;标准运算符“\max”(第二种)显示:[\max\textstyle\max\scriptstyle\max\scriptscriptstyle\max] 上述定义命令特定于第二种;这个简单的例子似乎证实了:\newcommand\angarr{\declareslashed{}{\uparrow}{-.08}{.2}{\rightarrow}\slashed{\rightarrow}}

相关内容