docCommand 环境和其他一些环境使用特定字体以粗体打印控制序列

docCommand 环境和其他一些环境使用特定字体以粗体打印控制序列

这是我以前的一个

考虑以下 MWE。

\documentclass{article}
\usepackage[all]{tcolorbox}
% \usepackage{newtxtt}
\begin{document}
\begin{docCommand}{foo}{}
  \verb|\foo|
\end{docCommand}
\end{document}

结果(使用 Computer Modern)如下所示,并且符合预期:

带 CM 的输出

如果我们取消注释该行\usepackage{newtxtt},红色\foo将变为粗体,而黑色则保持正常粗细。

使用 newtxtt 输出

可以确认此问题的字体包有

  • 导游 (\usepackage{courier}),
  • 似曾相识(\usepackage{dejavu}),
  • 费拉(\usepackage{FiraMono}),
  • Incondolata(\usepackage{zi4})和
  • 源代码专业版 ( \usepackage{sourcecodepro})。

我觉得很奇怪,环境变量第一个参数中使用的字体系列docCommand会根据字体系列而变化。这是怎么回事?

答案1

所有字体系列的字体系列都是粗体。但是,计算机现代的打字机字体系列没有粗体变体,因此 LaTeX 会恢复到正常系列。在日志中,您将发现以下消息:

LaTeX Font Info:    Font shape `OT1/cmtt/bx/n' in size <10> not available
(Font)              Font shape `OT1/cmtt/m/n' tried instead on input line 7.

相关内容