我最近安装了一种名为等宽字体 821。字体是 ttf 格式的,我像往常一样在 Linux 机器上安装它。
问题是当我使用
\textbf{Bold}
生成的文本未以粗体打印。为了获得粗体,我使用以下解决方法:
\newfontfamily\mybold{Monospace821BTBold}
\newcommand{\mytextbf}[1]{\mybold #1}
我的问题是:这是正常的吗?或者有没有办法在使用时自动获取粗体字体\textbf{...}
?
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Latin Modern Roman}
\newfontfamily\monobt{Monospace821BT}
\newfontfamily\mybold{Monospace821BTBold}
\newcommand{\mytextbf}[1]{\mybold #1}
\begin{document}
{\monobt \textbf{this is not bold}}
\mytextbf{this is bold}
\end{document}
等宽字体不用作tt
字体,我已设置另一种字体,\setmonofont{...}
因此无法将 Monospace 821 放在那里。
答案1
如果fontspec
无法找到与中等系列字体相关的粗体字体,您也可以使用正常选项\newfontfamily
:
\newfontfamily{\monobt}{Monospace821BT}[
BoldFont={Monospace821BTBold}
]
进而
{\monobt\textbf{This is bold}}
应该管用。
请注意,选项应该前字体名称与旧版本的fontspec
。