作为默认字体,我想要一个衬线字体(我的情况是 MinionPro)。但对于图形和表格标题,我喜欢使用无衬线字体(我的情况是 MyriadPro)。如果我想在标题中使用 给出电子质量的质量siunitx
,我发现它不起作用。我正在使用detect-all
选项siunitx
让它识别字体。
我们:
\documentclass[11pt]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[minionint]{MinionPro}
\usepackage[sansmath]{MyriadPro}
\usepackage{array}
\usepackage{siunitx}
\sisetup{detect-all}
\DeclareSIUnit{\Electronmass}{\text{\ensuremath{m_{\text{0}}}}} % My own definition
\setkomafont{captionlabel}{\sffamily\bfseries}
\setkomafont{caption}{\sffamily}
\begin{document}
Normal text in MinionPro.
\begin{table}[b]
\centering\sffamily\mathversion{sans}
\begin{tabular}{ c >{\centering}m{6.0cm} c }
\multicolumn{3}{c}{} \\
Band & Angular Momentum Eigenstate & Basis Set \\
\multicolumn{3}{c}{} \\
\hline
\multicolumn{3}{c}{} \\
a & b & c \\
\end{tabular}
\caption{Captions in MyriadPro. siunitx problem: $E=\SI{2}{\electronvolt}$ (works), $m=\SI{14}{\electronmass}$ (does not work), $m=\SI{14}{\Electronmass}$ (does not work either).}
\end{table}
\end{document}
答案1
编辑:
我对这里的行为方式有些困惑。如果我采用fromsiunitx
的定义并将其放入 LaTeX 中,我会得到正确的结果。\electronmass
siunitx
\documentclass[11pt]{scrbook}
\usepackage[utf8]{inputenc}
\usepackage[minionint]{MinionPro}
\usepackage[sansmath]{MyriadPro}
\usepackage[detect-all]{siunitx}
\begin{document}
Normal text in MinionPro.
{\sffamily\mathversion{sans}%
Sans serif text $\text {\ensuremath{m_{\text {e}}}}$
vs. $m=\SI{14}{\electronmass}$ }
\end{document}
约瑟夫赖特 (Joseph Wright) 就在这个论坛里,也许他有个想法。