在文本模式下更改“+”和“=”的字体

在文本模式下更改“+”和“=”的字体

我想更改文本模式的字体+=不是数学字体)

我主要使用articlebeamer文档类。

对于beamer类别,而不是lmodern字体,我喜欢nimbussans通用字体的包,除了它的书写方式+=

例如,lmodern字体渲染

\begin{frame}{}
\[\text{1+1=2}\]
\[\text{1$+$1$=$2}\]
\[1+1=2\]
\end{frame}

在此处输入图片描述

nimbussans字体则将其渲染为

在此处输入图片描述

我可以添加以下几行来更改数学+字体=

\DeclareSymbolFont{myoperators}{OT1}{lmr}{m}{n}
\SetSymbolFont{myoperators}{bold}{OT1}{lmr}{bx}{n}
\DeclareMathSymbol{+}{\mathbin}{myoperators}{"2B}
\DeclareMathSymbol{=}{\mathrel}{myoperators}{"3D}

要得到

在此处输入图片描述

但是,我不知道如何更改和的文本+字体=

对于article课程,我喜欢newtxtext通用字体包,但它有同样的问题(对我来说的问题):

在此处输入图片描述


平均能量损失

% article MWE
\documentclass[10pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
%\usepackage{lmodern}   %option1
\usepackage{newtxtext}  %option2
\begin{document}
\[\text{1+1=2}\]
\[\text{1$+$1$=$2}\]
\[1+1=2\]
\end{document}

% beamer MWE
\documentclass[10pt]{beamer}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
\usepackage{lmodern}                    %option1
\usepackage[scaled=0.95]{nimbussans}    %option2
\DeclareSymbolFont{myoperators}{OT1}{lmr}{m}{n}
\SetSymbolFont{myoperators}{bold}{OT1}{lmr}{bx}{n}
\DeclareMathSymbol{+}{\mathbin}{myoperators}{"2B}
\DeclareMathSymbol{=}{\mathrel}{myoperators}{"3D}

\begin{document}
\begin{frame}{}
\[\text{1+1=2}\]
\[\text{1$+$1$=$2}\]
\[1+1=2\]
\end{frame}
\end{document}

编辑

根据user202729的评论,我可以提出以下解决方案

\documentclass[10pt]{article}
\usepackage[T1]{fontenc}
\usepackage{amsmath}
%\usepackage{lmodern}   %option1
\usepackage{newtxtext}  %option2
\DeclareSymbolFont{myoperators}{OT1}{lmr}{m}{n}
\SetSymbolFont{myoperators}{bold}{OT1}{lmr}{bx}{n}
\DeclareMathSymbol{\myplus}{\mathbin}{myoperators}{"2B}
\DeclareMathSymbol{\myequal}{\mathrel}{myoperators}{"3D}
\catcode`+=\active
\catcode`==\active
\def+{\ensuremath{\myplus}}
\def={\ensuremath{\myequal}}
\begin{document}
\[\text{1+1=2}\]
\[\text{1$+$1$=$2}\]
\[1+1=2\]
\end{document}

但我不确定这个解决方案是否只在这个 MWE 中有效,或者它是否能与许多其他包配合使用。我也不确定这是有效/合适的实现。

相关内容