
答案1
自動調整大小的兩種替代方案N
:
\documentclass{article}
\usepackage{amstext}% or package amsmath for \text
\newcommand*{\ttmath}[1]{%
\texttt{\mdseries\upshape#1}%
}
\begin{document}
$2^{\verb|N|-1}$ {\small(\verb|\verb|)}
$2^{\texttt{N}-1}$ {\small(\verb|\texttt| with \verb|amstext|)}
\textit{Italics $2^{\ttmath{N}-1}$ context} {\small(macro \verb|\ttmath|)}
$2^{\mathtt{N}-1}$ {\small(\verb|\mathtt|)}
\end{document}
評論:
\texttt
這裡可以在數學模式下自動調整大小,因為它內部使用\nfss@text
在包中重新定義amstext
為\text
.巨集
\ttmath
也會重置字體屬性系列和形狀,以獨立於目前文字字體設定。\mathtt
是最有效的命令,並使用配置的打字機字體進行數學計算。這通常與 相同\ttfamily
。有些字體包同時切換兩種字體lmodern
,而有些則不然beramono
。因此,是否\mathtt
可以用 或 來代替\verb
,取決於字體設定\texttt
。
答案2
LaTeX 核心已經定義了\mathtt
,不需要其他任何東西。順便說一句,\verb
不應該濫用打字機字體列印,通常\texttt
就足夠了,而\verb
列印帶有特殊字元的 TeX 代碼則需要。
\documentclass{article}
\begin{document}
$2^{\mathtt{N}-1}$
$2^{\mathtt{N}^{\mathtt{M}}}$
\end{document}
定義自己的語義命令可能很有用,例如
\newcommand{\tvar}[1]{\mathtt{#1}}
並使用$2^{\tvar{N}}$
.這樣,您就不會受到特定表示的束縛,只需修改定義即可隨時更改該表示。
不同字體集的選擇可能不會更新\mathtt
。該解決方案很簡單,並且相對於其他解決方案的優勢在於\text
,它可以輕鬆地進行調整以支援\boldmath
開箱即用。
\documentclass{article}
\usepackage[T1]{fontenc} % necessary for beramono
\usepackage{amsmath}
\usepackage{beramono}
% update \mathtt to use the same font as \ttfamily
\DeclareMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{m}{n}
% if the monospaced font also supports boldface (b or bx)
\SetMathAlphabet{\mathtt}{\encodingdefault}{\ttdefault}{b}{n}
\newtheorem{theorem}{Theorem}
\begin{document}
$2^{\mathtt{N}-1}$ and \texttt{N}
\begin{theorem}
Something about $2^{\mathtt{N}-1}$
\end{theorem}
\end{document}
邊註
使用\texttt
是錯誤的,如下面的程式碼所示。
\documentclass{article}
\usepackage{amsmath}
\newcommand{\tvar}[1]{\mathtt{#1}}
\newtheorem{theorem}{Theorem}
\begin{document}
\section*{Right}
$2^{\tvar{N}-1}$
\begin{theorem}
Something about $2^{\tvar{N}-1}$
\end{theorem}
\section*{Wrong}
$2^{\texttt{N}-1}$
\begin{theorem}
Something about $2^{\texttt{N}-1}$
\end{theorem}
\end{document}
答案3
使用維爾納的答案的解決方案:https://tex.stackexchange.com/a/120694/120578
\documentclass{article}
\usepackage{verbatim}% http://ctan.org/pkg/verbatimes
\usepackage{pgf}
\makeatletter
\newcommand{\mverbatimfont}{\def\verbatim@font{\ttfamily}}%
\makeatother
\def\verbatimfont#1{\pgfmathsetmacro\bls{1.2*#1}\mverbatimfont\fontsize{#1}{\bls}\selectfont}
\begin{document}
\verbatimfont{6}
$2^{\verb|N|-1}$
\verbatimfont{9}
$\verb|N|^{\verbatimfont{6}\verb|N|-1}$
\end{document}
輸出: