latex - 有没有办法在乳胶中将方程的一部分居中对齐?
问题描述
我正在编写求解方程的步骤,为了清楚起见,我想将第二行解析的部分与第一行解析的部分对齐并居中。有没有办法做到这一点?
例如,采取这条简单的线
||-3 - 4 - 2| - 5|
这将通过第一步解决
||-9| - 5|
我想这样渲染:
||-3 - 4 - 2| - 5|
| |-9| - 5|
| 9 - 5|
可行吗?
解决方案
您可以使用eqparbox
's在所有类似 s 中\eqmakebox[<tag>][<align>]{<stuff>}
设置<stuff>
尽可能宽的框<tag>
。此外,您可以根据需要调整盒子的<align>
ment(默认为c
entre,但也有l
eft 和r
ight)。我已经适应\eqmakebox
在\eqmathbox
数学模式下工作:
\documentclass{article}
\usepackage{amsmath,eqparbox,xparse}
% https://tex.stackexchange.com/a/34412/5764
\makeatletter
\NewDocumentCommand{\eqmathbox}{o O{c} m}{%
\IfValueTF{#1}
{\def\eqmathbox@##1##2{\eqmakebox[#1][#2]{$##1##2$}}}
{\def\eqmathbox@##1##2{\eqmakebox{$##1##2$}}}
\mathpalette\eqmathbox@{#3}
}
\makeatother
\newcommand{\abs}[1]{\lvert #1 \rvert}
\begin{document}
\begin{align*}
& \abs{\eqmathbox[eqn1]{\underbrace{\abs{-3 - 4 - 2}}} - 5} \\
& \abs{ \eqmathbox[eqn1]{\underbrace{\abs{-9}}} - 5} \\
& \abs{ \eqmathbox[eqn1]{9} - 5}
\end{align*}
\end{document}
\underbrace
也许不是必需的,但为了减少的清晰度,它被添加了。
以上也可以在一个内部实现array
:
\documentclass{article}
\usepackage{amsmath}
\newcommand{\abs}[1]{\lvert #1 \rvert}
\begin{document}
\[
\begin{array}{ c @{} c @{} c }
\lvert & \underbrace{\abs{-3 - 4 - 2}} & {} - 5 \rvert \\
\lvert & \underbrace{\abs{-9}} & {} - 5 \rvert \\
\lvert & 9 & {} - 5 \rvert
\end{array}
\]
\end{document}
默认情况下,(垂直)间距稍微更紧。
推荐阅读
- node.js - 没有`next()`的表达错误中间件?
- visual-studio - 例外:AspNetCoreModule 不支持进程内托管。将 AspNetCoreModule 更改为至少 AspNetCoreModuleV2
- amazon - 如何使用 amazon ask-sdk-core 将商品添加到愿望清单或购物清单
- printing - OpenLayers:以特定比例打印 PDF(例如 1:1000)
- bash - 如何将嵌套命令传递给 Docker 运行?
- identityserver4 - 如何撤销 Identityserver4 中的刷新令牌?
- flutter - 使用 Flutter 将语义添加到每个页面上的第一个小部件
- python - 如何在 Keras 中重新训练权重
- testing - 在 Kubernetes 堆栈上运行集成/e2e 测试
- reactjs - 是否可以将 MaterialUI 与 React 和 css 模块一起使用并访问 css 模块文件中的主题?