将特定符号更改为适合初学者的特定字体系列

将特定符号更改为适合初学者的特定字体系列

我是使用 pdflatex 的 Latex 新手。我正在尝试将一些数学符号更改为不同的系列。就我而言,我想将 xi 更改为 XITS math。将 XITS 与 pdflatex 结合使用我可以简单地使用stix包来实现这一点。但是,在我的文档中,我使用了其他字体的符号,例如MnSymbol。当我同时使用两者时,会导致错误,\UndeclareText命令来自stix包。我使用的工作模型是

   \documentclass{report}
   \usepackage{amsmath}
   \usepackage{MnSymbol}
   \usepackage{stix}
   \begin{document}
    $\xi$
   \end{document}

使用不带 的上述代码MnSymbol,我会将所有符号更改为stix。但是,我只想使用 中的某些符号stix。我可以找到一些关于从特定字体系列中选择特定符号的讨论。作为一名初学者,我无法理解解决方案,以至于无法将其应用于我的情况。

我能找到的一个简单解决方案是https://tex.stackexchange.com/a/324207/180603。但是,此代码无法使用 pdflatex 运行!

改变符号的最简单的方法是什么?

答案1

如果您使用unicode-math,则有一种标准方法可以做到这一点,即range=\setmathfont假设您想使用 XITS Math(STIX 的固定版本)中的“墓碑”QED 符号而不是默认符号。您可以写,

\setmathfont{Latin Modern Math}
\setmathfont{XITS Math}[
   range=\QED, Scale=MatchUppercase ]

\QED符号现在将是一个黑色矩形,而不是白色正方形。(您可以\renewcommand\qedsymbol{\QED}在证明中使用它amsthm。)

许多遗留软件包有 OpenType 版本。 \setmathfont[range=...]可以混合并匹配 Unicode 中的任意符号的任意组合。

如果您想继续使用旧式数学软件包,或者无法使用 LuaLaTeX 或 XeLaTeX,则没有通用方法。最好的通用方法是打开文件.sty,复制定义所需符号所需的最少代码行,然后将其粘贴到文档中。通常,这些代码行后面会\DeclareSymbolFont跟着\DeclareMathSymbol,但 STIX 的不同之处在于它还声明了一些自定义字体编码。

由于 8 位传统 TeX 中数学字母数量有限,您可能会用完。如果您只需要一两个符号,则解决这个问题的一种方法是在数学模式下使用文本符号。您可以将数学类(例如或)包裹在\mathrel或框\mathbin周围,使用选择其中的特定编码、系列和系列,然后在字体表中查找所需的字符(如果软件包文档附带一个),然后使用插入它。\mbox\text\usefont\symbol

相关内容