对齐环境中的逐字字体

对齐环境中的逐字字体

请问可以在对齐环境中使用逐字环境的字体吗?我需要对一个本身就是数学公式的编码块执行此操作。谢谢。如果您喜欢示例,请参见下文。在那张图片中,我不想结合对齐和逐字的效果。

我想结合对齐和逐字的效果

\documentclass[]{article}

\usepackage{amsmath}

\begin{document}

\begin{align*}
a &= b+1 \\
  &= c+2
\end{align*}

\begin{verbatim}
a = b+1
  = c+2
\end{verbatim}

\end{document}

答案1

以下方法有效,但是会产生难看的间距(感谢 Steven B. Segletes):

\documentclass[]{scrartcl}
\usepackage{amsmath}
\begin{document}
\begin{align}
    \mathtt{a}&\mathtt{{}=b+1}\\%insert {} before = to get the spacing right
    &\mathtt{{}=c+2}
    \label{ha}
\end{align}
\end{document}

在此处输入图片描述

另一个解决方案——我不会使用它,因为它改变太多:

\documentclass[preview]{standalone}
\usepackage{amsmath}
\renewcommand*\familydefault{\ttdefault}% has to be used before mathastext
\usepackage{mathastext}
\renewcommand*\familydefault{\rmdefault}
\begin{document}
\begin{align}
    a&=b+1\\
     &=c+2
    \label{ha}
\end{align}
\end{document}

在此处输入图片描述

要允许打开或关闭字体更改,可以使用 -option subduedmathastext请注意,这不会保留默认数学版本!阅读包装文档特别是有关柔和的部分(撰写本文时为 1.3.3)以获取更多信息!

\documentclass[preview]{standalone}
\usepackage{amsmath}
\usepackage[subdued,defaultmathsizes,defaultimath,nohbar]{mathastext}
\MTDeclareVersion[n]{lmvtt}{T1}{lmvtt}{m}{n}
\renewcommand*\familydefault{\ttdefault}% has to be used before mathastext
\Mathastext[ttmath]
\renewcommand*\familydefault{\rmdefault}
\begin{document}
normal:
\begin{align}
    a&=b+1\\
     &=c+2
    \label{ha}
\end{align}
\bgroup
tt-style:
\MTversion{ttmath}
\begin{align}
    a&=b+1\\
     &=c+2
    \label{hatt}
\end{align}
\egroup
normal:
\begin{align}
    a&=b+1\\
     &=c+2
    \label{haha}
\end{align}
\end{document}

在此处输入图片描述

相关内容