装箱环境

装箱环境

我正在使用一个系统

$$\begin{cases}
Ax+By   & = C\\
Dx+Ey   & = F
\end{cases}$$ 

有没有办法在系统内将 A 和 D、B 和 E 以及 C 和 F 括起来?

答案1

编辑:

\documentclass{article}
\usepackage{amsmath}

\usepackage{tikz}
\usetikzlibrary{calc,shapes}

\makeatletter
\xdef\myfsize{\f@size}
\makeatother



\newcommand{\tikzmark}[1]{\tikz[overlay,remember picture] \node (#1) {};}
\newcommand{\DrawRect}[4]{%
  \begin{tikzpicture}[overlay,remember picture]
    \draw[#3] ([yshift={\myfsize/1.5},xshift=#4]#1.north west) rectangle ([xshift=-#4]#2.south east);
  \end{tikzpicture}
}
\begin{document}
\[\begin{cases}
\tikzmark{a}A x+ \tikzmark{c}B y   & = \tikzmark{e} C\\
D\tikzmark{b} x+E\tikzmark{d} y   & = F\tikzmark{f}
\DrawRect{a}{b}{green}{4pt}\DrawRect{c}{d}{red}{4pt}\DrawRect{e}{f}{black}{4pt}
\end{cases}
\]
\end{document}

上面的代码给出了相同的结果,但会自动找到字体大小作为 yshift,并且有一个额外的参数可以减少 x 轴上的框(负值会增加它)

我更改的代码源代码:https://tex.stackexchange.com/a/35718/120578

旧答案 快速解决方案:

\documentclass{article}
\usepackage{amsmath}

\usepackage{tikz}
\usetikzlibrary{calc,shapes}

\newcommand{\tikzmark}[1]{\tikz[overlay,remember picture] \node (#1) {};}
\newcommand{\DrawRect}[3]{%
  \begin{tikzpicture}[overlay,remember picture]
    \draw[#3] ([yshift=8pt,xshift=4pt]#1.north west) rectangle ([yshift=0pt,xshift=-4pt]#2.south east);
  \end{tikzpicture}
}
\begin{document}

\[\begin{cases}
\tikzmark{a} A x+ \tikzmark{c} B y   & = \tikzmark{e} C\\
D \tikzmark{b} x+E\tikzmark{d} y   & = F\tikzmark{f}
\DrawRect{a}{b}{green}\DrawRect{c}{d}{red}\DrawRect{e}{f}{black}
\end{cases}
\]
\end{document}

可以改进,但我添加它是为了获得我的评论的观点。

结果:

在此处输入图片描述

相关内容