我想使用 XeTex 并使用 Sans Serif 字体来处理数学和文本。使用时cmbright
我总是收到警告消息。
\documentclass[12pt, a4paper]{article}
\usepackage{cmbright} %CMU Bright for math
\usepackage{fontspec}
\setsansfont{cmunb}[ %CMU Bright for text
Extension=.otf,
UprightFont=*mr,
ItalicFont=*mo,
BoldFont=*sr, % semibold
BoldItalicFont=*so, % semibold oblique
]
\begin{document}
% I get 2 warnings:
% Warning: cmbright.sty
% LaTeX Font Warning: Font shape `TU/cmbr/m/n' undefined (Font) using `TU/lmr/m/n' instead on input line 144.
% Warning: root.tex
% LaTeX Font Warning: Some font shapes were not available, defaults substituted.
\end{document}
答案1
您可以通过更改软件包的加载顺序并为 sans 字体提供 cmbright 使用的系列名称来消除警告。
\documentclass[12pt, a4paper]{article}
\usepackage[no-math]{fontspec}
\setsansfont{cmunb}[ %CMU Bright for text
Extension=.otf,
UprightFont=*mr,
ItalicFont=*mo,
BoldFont=*sr, % semibold
BoldItalicFont=*so, % semibold oblique
NFSSFamily=cmbr
]
\usepackage{cmbright} %CMU Bright for math
% as cmbright sets \ttdefault to cmtl either:
%\setmonofont{whatever}[NFSSFamily=cmtl]
% or
%\renewcommand{\ttdefault}{lmtt}
\begin{document}
abc $a=b$
\end{document}
但如果 cmbright 不发出\normalfont
命令,那自然会更简单。它看起来没什么用。