我的标签如下:
\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$