我使用txfonts
包来访问\lambdaup
符号。为了与其他文档保持一致,我随后加载包lmodern
来重置字体系列。但是,我想保留大(> 2 行)矩阵的括号样式(通过\pmatrix
来自的环境amsmath
)\txfonts
。有办法吗?
比较以下带有/不带有注释\usepackage{lmodern}
行的示例:
\documentclass{article}
\usepackage{amsmath}
\usepackage{txfonts} % \lambdaup
\usepackage{lmodern}
\begin{document}
$\begin{pmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$
\end{document}
第一张图片展示了 CM 字体的括号“默认”样式:
第二幅图展示了我希望从 TX 字体实现的括号样式:
第三张图片显示了 egreg 提出的答案:
答案1
我认为您不应该将 TX 的括号与 CM 的括号混淆,但您可以这样做。
\documentclass{article}
\usepackage{amsmath}
\usepackage{lmodern}
%\usepackage{txfonts} % \lambdaup
\makeatletter
\let\iftx@libertine\iffalse
\let\iftx@minion\iffalse
\let\iftx@coch\iffalse
\makeatother
\DeclareFontEncoding{LMX}{}{}
\DeclareFontSubstitution{LMX}{ntxexx}{m}{n}
\DeclareSymbolFont{TXlettersA}{U}{ntxmia}{m}{it}
\SetSymbolFont{TXlettersA}{bold}{U}{ntxmia}{b}{it}
\DeclareSymbolFont{TXlargesymbols}{LMX}{ntxexx}{m}{n}
\SetSymbolFont{TXlargesymbols}{bold}{LMX}{ntxexx}{b}{n}
\DeclareMathSymbol{\lambdaup}{\mathord}{TXlettersA}{21}
\DeclareMathDelimiter{(}{\mathopen}{operators}{"28}{TXlargesymbols}{0}
\DeclareMathDelimiter{)}{\mathclose}{operators}{"29}{TXlargesymbols}{1}
\begin{document}
$\begin{pmatrix}
1 & 0 & \lambdaup \\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$
$(a+b)c$
$\bigl(a+b\bigr)c$
\end{document}
如果你喜欢 风格的括号txfonts
,你可以这样做:
\documentclass{article}
\usepackage{amsmath}
\usepackage{lmodern}
%\usepackage{txfonts} % \lambdaup
\DeclareSymbolFont{TXlettersA}{U}{txmia}{m}{it}
\SetSymbolFont{TXlettersA}{bold}{U}{txmia}{bx}{it}
\DeclareSymbolFont{TXlargesymbols}{OMX}{txex}{m}{n}
\SetSymbolFont{TXlargesymbols}{bold}{OMX}{txex}{bx}{n}
\DeclareMathSymbol{\lambdaup}{\mathord}{TXlettersA}{21}
\DeclareMathDelimiter{(}{\mathopen}{operators}{40}{TXlargesymbols}{0}
\DeclareMathDelimiter{)}{\mathclose}{operators}{41}{TXlargesymbols}{1}
\begin{document}
$\begin{pmatrix}
1 & 0 & \lambdaup \\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$
$(a+b)c$
$\bigl(a+b\bigr)c$
\end{document}
答案2
您可以加载较新的软件包,而不是加载已弃用的txfonts
软件包(该软件包提供文本和数学 Times Roman 字形),该软件包newtxmath
不会修改文本模式字形。因此,您可以保留 Computer Modern 文本模式字体部分。
\documentclass{article}
\usepackage{amsmath} % for 'pmatrix' env.
\usepackage[cmbraces]{newtxmath} % provides '\lambdaup'
\begin{document}
$\begin{pmatrix}
1 & 0 & \lambdaup\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}$
\end{document}