這是我在這個網站上的第一個問題。我必須說,訪問這個網站來學習 LaTeX 的工作原理對我來說非常有用,所以恭喜你。
那麼,問題是,我該如何做到這一點?我想要不在 tikz 中的解決方案,因為我從未使用過它。我正在尋找類似宏或類似的東西。這必須在方程式環境中。
謝謝!
答案1
根據我的回答如何在數學模式下連結兩個術語, 使用
\ubar{left}{middle}{right}{undertext}
其中每個術語均以數學模式獲取,包括undertext
.可以更改參數\rldp
、\rlht
、\rlwd
和\rlbr
以影響外觀。
\rldp
是主要水平下樑的深度
\rlht
是垂直支柱的高度,位於主水平下桿的上方和下方。
\rlwd
是規則的寬度(厚度)
\rlbr
是次要垂直規則的高度,它圍繞著實際的數學術語。
\documentclass{article}
\usepackage{stackengine}
\stackMath
\def\rldp{1.4ex}
\def\rlht{.8ex}
\def\rlwd{.8pt}
\def\rlbr{2pt}
\setstackgap{L}{\rldp}
\def\uvbarR#1{%
\def\stackalignment{r}\def\stacktype{S}\stackunder[-\rlwd]{%
\def\stackalignment{c}\def\stacktype{L}\stackunder{\ubr{#1}}{\rule{\rlwd}{\rlht}}%
}{\setbox0\hbox{$#1$}\rule{.5\wd0}{\rlwd}}%
}
\def\uvbarL#1{%
\def\stackalignment{l}\def\stacktype{S}\stackunder[-\rlwd]{%
\def\stackalignment{c}\def\stacktype{L}\stackunder{\ubr{#1}}{\rule{\rlwd}{\rlht}}%
}{\setbox0\hbox{$#1$}\rule{.5\wd0}{\rlwd}}%
}
\def\uvbar#1#2{%
\def\stacktype{S}\def\stackalignment{c}\def\useanchorwidth{T}\stackunder[0pt]{%
\def\stacktype{L}\setbox0\hbox{${}#1{}$}%
\stackunder[\rldp]{{}#1{}}{\rule{\wd0}{\rlwd}}%
}{\def\stacktype{S}\stackunder[1pt]{\rule{\rlwd}{\rlht}}{\scriptscriptstyle#2}}%
}
\def\ubr#1{\setbox2=\hbox{$#1$}\stackunder[\dimexpr\rldp-\rlht\relax]{#1}{%
\llap{\rule{\rlwd}{\rlbr}}\rule{\wd2}{\rlwd}\rlap{\rule{\rlwd}{\rlbr}}}}
\newcommand\ubar[4]{\uvbarR{#1} \uvbar{#2}{#4} \uvbarL{#3}}
\begin{document}
$\ubar{ax}{+ by +}{cz}{h} =d$
\end{document}
正如egreg 所建議的,透過使用 來細化線條\rlwd
可能是可取的。這裡設定\rlwd
為 0.4pt。
答案2
這是一個使用的選項\underbrace
:
\documentclass{article}
\usepackage{amsmath}
\newlength{\lwidth}
\newlength{\rwidth}
\begin{document}
\begin{align*}
\underbrace{\mathstrut zabc}{} + defg + \underbrace{\mathstrut hijklm} &= n \\[-4\jot]
\settowidth{\lwidth}{zabc}% Left \underbrace width
\settowidth{\rwidth}{hijklm}% Right \underbrace width
\underbrace{\hspace{.6\lwidth} \phantom{{} + defg + {}}\hspace{.6\rwidth}}_{opqr}
\hspace{.4\rwidth}% Due to right-alignment in align
\mkern 6mu% Adjustment for missing =
\end{align*}
\end{document}
左、右下括號內容長度儲存在 和 中\lwidth
,\rwidth
並用於下括號內的間距目的\underbrace
。需要在這裡或那裡進行一些小的調整來定位事物。
\mathstrut
強制沒有下降部分的數學內容具有相同的深度。
答案3
不完美但接近:
\documentclass{article}
\usepackage{mathtools}
\begin{document}
\begin{equation*}
\begin{aligned}
&\underbracket{ax} + by + \underbracket{cz} = d \\[-14pt]
&\hphantom{a\!}%
\underbracket{\hphantom{a+ by+ c}}
\end{aligned}
\end{equation*}
\end{document}
祝你好運