Ako môžem prinútiť LaTeX ignorovať výšku podprsenky?

How Can I Make Latex Ignore Height Underbrace



Riešenie:

Riešenie pomocouTikZ pre diagonálne vzpery:

 documentclass {article}  usepackage {amsmath, array}  usepackage {tikz}  usetikzlibrary {decoration.pathreplacing}  setlength  arraycolsep {4pt} % default value: 6pt  newcommand  tikzmark [1] { %  tikz [overlay, zapamätajte si obrázok, základnú čiaru]  súradnice [kotva = základňa] (#1);}  newcommand  DrawBrace [3] {%  draw [ozdobiť, dekorácia = {rovnátka, amplitúda = 2pt, zrkadlo, zdvihnúť = 2pt}] (# 1)-(#2) uzol [čierny, uprostred, šikmý, yshift = -10pt] { poznámka pod čiarou $#3 $}; }  begin {document}  begin {equation*}  left ( begin {array} {*{9} {c}}  tikzmark {a}  phantom {-} 1 \ &  ddots & \ & &  tikzmark {b}  phantom {-} 1 \ & & &  tikzmark {c} -1 \ & & & &  ddots & \ & & & & & &   tikzmark {d} -1 \ & & & & & & &  tikzmark {e}  phantom {-} 0 \ & & & & & & & & & ddots & \ & & & & & & & & &  tikzmark {f}  phantom {-} 0 \  end {array}  right)  end {equation*}  begin {tikzpicture} [remember picture, overlay]  DrawBrace {a} {b} {r _ {+} (s) -mal}  DrawBrace {c} { d} {r _ {-} (s) -mal}  DrawBrace {e} {f} {r_ {0} (s) -mal}  end {tikzpicture}  end {document}

sem zadajte popis obrázku




Nie je to skutočne elegantné riešenie. V zásade stačí nastaviť dodatočný zvislý priestor vytvorený systémom podprsenka na nulu. Jeden ľahký nástroj na to je raisebox, ktorý je v prvom a druhom voliteľné argument umožňuje zadať explicitnú výšku a hĺbku pre výsledné pole.



Dve komplikácie:



  1. The vnútorné pole vychádza vertikálne na stred, takže výška a hĺbka poľa konštrukcia podprsenky je zakalená.
  2. Ak má jeden z riadkov hĺbku nula, do vonkajšieho poľa sa vloží ďalší zvislý priestor, takže celý boxový konštrukčný prvok je potrebné znova spustiť.

Výsledkom je toto „riešenie“:

 begin {rovnica*}  vľavo (,  begin {array} {[email protected] {} [email protected] {} rrr} % @{} sa používa dvakrát na potlačenie medzisloupcového medzier  overbrace { boxu { begin {array} {rrr} % Prvý blok (1) 1 & & \ &  ddots & \ & & 1 \  end {array}}}^{r _+(s) -mal} \ &  raisebox {-.5  height} [. 5  height] [. 5  height] {% $  underbrace { raisebox { depth} {% $  boxed { begin {array} {rrr}% Second block (- 1) -1 & & \ &  ddots & \ & & -1 \  end {array}} $%}%} _ {r _ { -} (s) -mal} $%}% \ & &  underbrace { boxed { begin {array} {rrr} % Third block 0 & & \ &  ddots & \ & & 0 \  end {array}}} _ {r_0 (s) -mal} \  end {array} ,  right)  end {rovnica*}

príklad


Musí existovať atikzmark spôsobom. Ale teraz nemám čas. Medzitým bude škaredým hackom manuálne zmenšenie priestoru pomocou\ [dĺžka] ako v



 documentclass {article}  usepackage [pdftex, active, tightpage] {preview}  setlength  PreviewBorder {2mm}  usepackage {amsmath, array}  renewcommand  arraycolsep {4pt} % default value: 6pt  begin {document}  begin {preview}  begin {equation*}  left (,  begin {array} {[email protected] {} [email protected] {} rrr} % @{} sa používa dvakrát na potlačenie medzisloupcového medzier  overbrace { box { begin {array} {rrr} % Prvý blok (1) 1 & & \ &  ddots & \ & & 1 \  end {array}}}^{r _+(s) -mal} \ &  underbrace { boxed { begin {array} {rrr} % Second block (-1) -1 & & \ &  ddots & \ & & -1 \  end {array}}} _ {r_ {-} (s) -mal} \ [-17 bodov] %%%<--Here & & underbrace{ oxed{ egin{array}{rrr} % Third block 0 & & \ & ddots & \ & & 0\ end{array} } }_{r_0(s)-mal} \ end{array},
ight) end{equation*} end{preview} end{document}  

sem zadajte popis obrázku

Na odhadnutie vhodnej hodnoty pre by bolo potrebné malé očarovanie\ [-17 bodov].