在這個MWE中,我想得到字母“H”的粗體字母(比較兩個“H”):
\documentclass[10 pt]{beamer}
\usetheme{default}
\usepackage{lmodern} % load a font with all the characters
\usepackage{fontspec}
\usepackage{cmbright}
\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n}
\usepackage{amsmath}%loads amsmath that should go before unicode-math
\usefonttheme{professionalfonts}
\defaultfontfeatures{Mapping=tex-text} % This seems to be important for mapping glyphs properly
\begin{document}
\begin{frame}
\[
\mbox{First bold H : }\|x\|_{\mathbf{H}},\; \mbox{Second bold H : }\mathbf{H}
\]
\end{frame}
\end{document}
但我不知道該怎麼做。這個MWE產生的「H」很小,但沒有大膽的效果。如果我使用
\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n}
我得到了粗體的小“H”,但使用的字體仍然不一樣。
答案1
對於低於 10pt 的尺寸,cmbright 套件將粗體字體(不存在)子集化並使用正常粗細。您可以透過在 cmbright 後面新增以下程式碼來變更此設定:
\usepackage{cmbright}
\fontencoding{OT1}\fontfamily{cmbr}\selectfont %to load ot1cmbr.fd
\DeclareFontShape{OT1}{cmbr}{bx}{n}{% change bx definition
<->cmbrbx10%
}{}
\normalfont % back to normalfont
答案2
您可以簡單地加載unicode-math
微量元素:
\documentclass[10 pt]{beamer}
\usetheme{default}
\usepackage{lmodern} % load a font with all the characters
\usepackage{fontspec}
\usepackage{amsmath}%loads amsmath that should go before unicode-math
\usepackage{unicode-math}
\usepackage{cmbright}
\SetSymbolFont{largesymbols}{normal}{OMX}{iwona}{m}{n}
\usefonttheme{professionalfonts}
\defaultfontfeatures{Mapping=tex-text} % This seems to be important for mapping glyphs properly
\begin{document}
\begin{frame}
\[
\|x\|_{\mathbf{H}}
\]
\end{frame}
\end{document}
答案3
我有類似的問題。unicode-math
@karlkoeller 提出的建議對我不起作用,因為我使用pdflatex
.
我有一個帶有上標的單字。我設法將它們與mbox
普通文字一起加粗bfseries
(需要寫兩次)。
$\mbox{\bfseries Ge}^{\mbox{\bfseries 76}}$