等式中的逗号应采用斜体

等式中的逗号应采用斜体

我的标签如下:

\documentclass{book}
\usepackage[T1]{fontenc}
\usepackage{txfonts}
\begin{document}

Test \quad $a,b$\quad \textit{a, b}\quad a, b


\end{document}

在此,我需要让逗号字符在内联和显示方程式中都采用斜体字体。有什么建议吗?

答案1

您可以在数学模式中重新声明逗号。

newtx(优先于txfonts

\documentclass{article}
\usepackage{newtxtext,newtxmath} % no txfonts, please

\makeatletter
\DeclareSymbolFont{italic}{\tx@enc}{\rmdefaultB}{m}{it}
\SetSymbolFont{italic}{bold}{\tx@enc}{\rmdefaultB}{\bold@wt}{it}
\DeclareSymbolFontAlphabet{\mathit}{italic}
\DeclareMathSymbol{,}{\mathpunct}{italic}{`,}
\makeatother

\begin{document}

Test \quad $a,b$\quad \textit{a, b}\quad a, b

\end{document}

在此处输入图片描述

txfonts

\documentclass{article}
\usepackage{txfonts}

\DeclareSymbolFont{italic}{OT1}{txr}{m}{it}
\SetSymbolFont{italic}{bold}{OT1}{txr}{bx}{it}
\DeclareSymbolFontAlphabet{\mathit}{italic}
\DeclareMathSymbol{,}{\mathpunct}{italic}{`,}

\begin{document}

Test \quad $a,b$\quad \textit{a, b}\quad a, b

\end{document}

在此处输入图片描述

一些解释

newtxmath包定义了一个数学字母表

\DeclareMathAlphabet{\mathit}{\tx@enc}{\rmdefaultB}{m}{it}
\SetMathAlphabet{\mathit}{bold}{\tx@enc}{\rmdefaultB}{\bold@wt}{it}

但是我们想借用此字体中的逗号作为数学符号。因此,我们声明一个具有相同参数(编码、系列、粗细和形状)的符号字体,然后\mathit使用重新声明\DeclareSymbolFontAlphabet。然后逗号的声明就很简单了。

答案2

只需\textit{}在逗号周围添加即可使逗号字符在数学模式下变为斜体。所以:

$a\textit{,}b$

相关内容