为什么 SetMathAlphabet{\mathit} 不能改变字母表?

为什么 SetMathAlphabet{\mathit} 不能改变字母表?

我正在尝试更改数学字母表。以下 MWE 在我的 Latex 安装中编译时没有错误或警告,但数学字体实际上没有改变。数学字母表与默认​​文本保持不变。奇怪的是,该\DeclareMathAlphabet命令运行良好,因此:第一个短语与最后两个短语不同。如果这很重要,我正在使用 pdfLaTeX。

\documentclass{article}
\SetMathAlphabet{\mathit}{normal}{OT1}{ppl}{m}{it}
\DeclareMathAlphabet{\palit}{OT1}{ppl}{m}{it}

\begin{document}
$\palit{somemathinpalatino}\ somemathinpalatino$ \textit{somemathinpalatino}
\end{document}

答案1

数学字母表\mathit用于“数学中的斜体文本”,与没有标记的单个字母使用的“数学斜体”有很大不同。

为了使用具有系列名称的某些字体,例如fabc,您必须定义一个符号字体。例如

\DeclareSymbolFont{abcletters}{OT1}{fabc}{m}{it}

然后定义字母以使用abcletters符号字体:

\DeclareMathSymbol{a}{\mathalpha}{abcletters}{`a}
\DeclareMathSymbol{b}{\mathalpha}{abcletters}{`b}
\DeclareMathSymbol{c}{\mathalpha}{abcletters}{`c}
...
\DeclareMathSymbol{y}{\mathalpha}{abcletters}{`y}
\DeclareMathSymbol{z}{\mathalpha}{abcletters}{`z}
\DeclareMathSymbol{A}{\mathalpha}{abcletters}{`A}
\DeclareMathSymbol{B}{\mathalpha}{abcletters}{`B}
...
\DeclareMathSymbol{Y}{\mathalpha}{abcletters}{`Y}
\DeclareMathSymbol{Z}{\mathalpha}{abcletters}{`Z}

间距会出错,特别是涉及指数或下标时,因为数学字母字体需要为字符专门制作的参数。

相关内容