如何全局设置 \verb 字体样式来匹配默认文档样式?

如何全局设置 \verb 字体样式来匹配默认文档样式?

我想设置\verb{}字体以与文档的当前系列和大小相对应。也就是说,无论默认设置是什么样式,输出都必须与文本主体的其余部分无法区分。

答案1

使用默认字体编码时,OT1由于编码问题(兼容性负担),您无法将打字机字体切换为普通文本字体。T1例如,编码问题已在字体编码中得到解决。然后可以将字体\ttfamily更改为使用罗马字体,例如:

\documentclass{article}
\usepackage[T1]{fontenc}% NOT OT1!
\usepackage{lmodern}% Latin Modern fonts,
  % a modern variant of Computer Modern fonts
\let\ttdefault\rmdefault

\begin{document}
  Hello \texttt{World}! \verb|\relax %$&#|
\end{document}

结果

如果需要从上下文继承字体设置,则\verbatim@font可以重新定义为不执行任何操作。它用于\verb环境verbatim

\documentclass{article}

\usepackage[T1]{fontenc}% NOT OT1
\usepackage{lmodern}

\makeatletter
\renewcommand*{\verbatim@font}{}
\makeatother

\begin{document}
  Hello \texttt{World}! \verb|\relax %$&#|

  {\sffamily Hello \texttt{World}! \verb|\relax %$&#|}

  {\itshape Hello \texttt{World}! \verb|\relax %$&#|}

  {\bfseries Hello \texttt{World}! \verb|\relax %$&#|}
\end{document}

结果

相关内容