![对齐方程子集上的多行框](https://linux22.com/image/358568/%E5%AF%B9%E9%BD%90%E6%96%B9%E7%A8%8B%E5%AD%90%E9%9B%86%E4%B8%8A%E7%9A%84%E5%A4%9A%E8%A1%8C%E6%A1%86.png)
我有一个多线方程,其排列方式如下:(示意图)
\documentclass[english]{article}
\usepackage{amsmath}
\usepackage{babel}
\begin{document}
\begin{align}
\text{Equ} &\equiv \text{first line of RHS} \;+\nonumber \\
& \phantom{=}+\;\text{second line of RHS}\nonumber \\
& =\text{third line of RHS} \; +\nonumber \\
& \phantom{=} +\; \text{fourth line of RHS}
\end{align}
\end{document}
我想要实现的是一个多行框仅有的第三、第四行如下:
我尝试使用 \boxed{} 函数,但无法在多行上使用。注意:我更喜欢不是在这种情况下,将整个四条线框起来。
这是可能的吗?如果可以,该如何做?
编辑:(根据 Bernard 的回答)我在实施pstricks
解决方案时遇到了 2 个困难:1) 编号似乎在环境之外重新开始postscript
。2) 方程引用\eqref{}
似乎不适用于\label{}
。postscript
请参阅下面的输出和 MWE:
\documentclass[english, svgnames]{article}
\usepackage{mathtools}
\usepackage{babel}
\usepackage{pst-node}
\usepackage{auto-pst-pdf}
\begin{document}
\begin{postscript}
\begin{align}
\text{Equ} & \equiv \text{first line of RHS} +{} \\
& =+\;\text{second line of RHS} \\
\pnode[-0.6em, 2.5ex]{A} & =\text{third line of RHS} + {} \\
& = +\; \text{fourth line of RHS} \pnode[0.8em, -1.5ex]{B} \label{Equ1}
\end{align}
\psframe[linejoin=1, linecolor=black](A)(B)
\end{postscript}
\begin{align}
\text{Equ2} &= \text{first line of RHS}\\
&= \text {second line of RHS}\label{Equ2}
\end{align}
Reference to Equ1: \eqref{Equ1}. Reference to Equ2: \eqref{Equ2}.
\end{document}
答案1
厚颜无耻地从 Werner 那里借用了https://tex.stackexchange.com/a/358675/4427
\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz}
\usetikzlibrary{fit,tikzmark}
\begin{document}
\begin{align}
\text{Equ} &\equiv \text{first line of RHS} \nonumber \\
&\quad + \text{second line of RHS} \nonumber \\
\tikzmark{start1} &=\text{third line of RHS} \nonumber \\
&\quad + \text{fourth line of RHS} \tikzmark{end1}
\end{align}
\begin{tikzpicture}[remember picture,overlay]
\coordinate (start) at ([yshift=1.7ex]pic cs:start1);
\coordinate (end) at ([yshift=-0.3ex]pic cs:end1);
\node[inner sep=2pt,draw=red,fit=(start) (end)] {};
\end{tikzpicture}
\end{document}
答案2
使用 很简单pstricks
:在第三行的开头放置一个空节点,在第四行的末尾放置另一个空节点,然后绘制具有相对顶点的框架,这两个节点。 的可选参数\pnode
是偏移量。
pdflatex
如果您设置了--enable-write18
MiKTeX、-shell-escape
TeX Live 和 MacTeX 的开关,则可以编译此代码。
或者,不加载auto-pst-pdf
,删除postscript
环境,然后使用进行编译xelatex
。
\documentclass[english, svgnames]{article}
\usepackage{mathtools}
\usepackage{babel}
\usepackage{pst-node}
\usepackage{auto-pst-pdf}
\begin{document}
\begin{postscript}
\begin{align}%
\text{Equ} & ≡ \text{first line of RHS} +{} \\
& =+\;\text{second line of RHS} \\
\pnode[-0.6em, 2.5ex]{A} & =\text{third line of RHS} + {} \\
& = +\; \text{fourth line of RHS} \pnode[0.8em, -1.5ex]{B}
\end{align}
\psframe[linejoin=1, linecolor=Coral](A)(B)
\end{postscript}
\end{document}
添加:交叉引用似乎存在问题,它只在此版本的代码中运行良好,可用于xelatex
:
\documentclass[english]{article}
\usepackage{mathtools}
\usepackage[showframe]{geometry}
\usepackage{babel}
\usepackage{pst-node}%
\usepackage{cleveref}
\begin{document}
\begin{align}%
\text{Equ} & ≡ \text{first line of RHS} +{} \label{Equ1}\\
& =+\;\text{second line of RHS} \\
\pnode[-0.6em, 2.5ex]{A}& =\text{third line of RHS} + {} \\
& = +\; \text{fourth line of RHS}\label{Equ4}\pnode[0.8em, -1.5ex]{B}
\psframe[linejoin=1](A)(B)
\end{align}}
\eqref{Equ1} and \cref{Equ4}
\end{document}