我使用 Linux Libertine 字体和newtxmath
软件包来获得匹配的数学运算。但我发现数学运算符(例如减号和加号等)并非来自 Linux Libertine。如何实现这一点,这意味着 Linux Libertine 的所有相关字形(例如减号和加号、加减号等)都将用于数学运算?
我有一个部分工作示例取自如何重新定义“加号”符号?,但我不能多次放置相关代码块,每次都使用不同的符号,这会导致错误(许多Missing $ inserted $+
和最后TeX capacity exceeded, sorry [grouping levels=255] $+
)。 MWE 注释掉了第二个代码块,因此它可以编译。
如何扩展给定的解决方案以获得更多符号或如何使用不同的方法来做到这一点pdftex
?
\documentclass{standalone}
\usepackage{libertine}
\usepackage[libertine]{newtxmath}
\usepackage{textcomp}
\begingroup
\catcode`-=\active
\gdef-{\mathbin{\text{\textminus}}}
\endgroup
\AtBeginDocument{\mathcode`-="8000 }
%\begingroup
%\catcode`+=\active
%\gdef+{\mathbin{\text{+}}}
%\endgroup
%\AtBeginDocument{\mathcode`+="8000 }
\begin{document}
$+-\pm$ +\textminus\textpm
\end{document}
答案1
我不明白为什么需要使字符数学活跃。
\documentclass{standalone}
\usepackage{libertine}
\usepackage[libertine]{newtxmath}
\usepackage{textcomp}
\DeclareSymbolFont{operatorsB}{TS1}{\rmdefaultB}{m}{n}
\DeclareMathSymbol{+}{\mathbin}{operators}{43}
\DeclareMathSymbol{-}{\mathbin}{operatorsB}{61}
\DeclareMathSymbol{\pm}{\mathbin}{operatorsB}{177}
\begin{document}
$+-\pm$ +\textminus\textpm
\end{document}