配列環境セルを2行に渡って配置を維持

配列環境セルを2行に渡って配置を維持

次の例では、位置合わせを維持しながら中括弧を2行に渡そうとしています。

正しい配置

この場合、配置は正しいです。ほぼ完了したと思います。ご協力いただければ幸いです。

上記の画像は、

\begin{equation}
    \begin{array}[t]{ccccccccccl}
        &  &  &  &  & a & a & a &a & \} & d \vspace{0.1cm} \\
        \hline \vspace{-0.4cm}\\
         &  &  &  &  &a & a & a &a\\
         &  &  &  &  &   & b & b & b& \Big\} &d\\
         &  &  & c & c & c & c &c& c \\
         \hline \vspace{-0.4cm}\\
         &  &  & a &a & a & a & a &a\\
         &  &  &  & b &b &b & b & b & \Big\} & d\\
         & c &c & c & c&c&  &c& c\vspace{0.1cm} \\
    \end{array}\label{eq:diagramm}
\end{equation}.

歯列矯正器具はこんな感じです

正しい歯列矯正

しかし、これではアライメントが崩れてしまいます。この試みはこの質問

\documentclass{article}
\usepackage{amsmath,amsthm,array}% http://ctan.org/pkg/{amsmath,amsthm,array}
\newcommand{\twolinebrace}{\left.\kern-\nulldelimiterspace\begin{array}{@{}c@{}}   \\\\\end{array}\right\}}
\newtheorem{theorem}{Theorem}
\begin{document}
\[
  \renewcommand{\arraystretch}{1.25}
  \begin{array}{@{}l@{\quad}l@{}}
    \begin{array}{lllllllll}
      &  &  &  &  &a & a & a &a\\ % RHS
      &  &  &  &  &   & b & b & b \\ % RHS   
      &  &  & &c& c& c &c& c  % RHS
    \end{array} & \twolinebrace\text{d} \\
        \begin{array}{lllllllll}
      &  &  &  & a &a & a & a &a\\ % RHS
      &  &  &  &  & b  & b & b & b \\ % RHS   
      &  & & c&c& c& c &c& c  % RHS
    \end{array} & \twolinebrace\text{d} 
  \end{array}
\]
\end{document}

答え1

パッケージを使用すると簡単に実行できますblkarray。コードよりも 2 列少なくて済みます。

\documentclass{article}
\usepackage{amsmath}
\usepackage{blkarray}%

\begin{document}
\[
  \renewcommand{\arraystretch}{1.3}
  \begin{blockarray}{*{9}{l}}
\begin{block}{*{8}{l}l<{\,}\Right{\}}{\,$ d $}}
      & & & & &a & a & a &a \\
      & & & & & & b & b & b \\
      & & & &c& c& c &c& c \\
\end{block}
\begin{block}{*{8}{l}l<{\,}\Right{\}}{\,$ d $}}
      & & & & a & a & a & a & a \\
      & & & & & b & b & b & b \\
      & & & c & c & c & c & c & c \\
\end{block}
%\end{block}
  \end{blockarray}
\]
\end{document} 

ここに画像の説明を入力してください

答え2

配置を維持するには、配列を 1 つだけ使用する必要があります。

中括弧を外すと\smash、列が広がるのを防ぐことができます。

\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
  \renewcommand{\arraystretch}{1.25}
  \begin{array}{lllllllllll}
      &  &  &  &  &a & a & a &a  &&\\ % RHS
      &  &  &  &  &   & b & b & b & \smash{\Bigg\}} & d\\ % RHS   
      &  &  & &c& c& c &c& c  \\% RHS
      &  &  &  & a &a & a & a &a &&\\ % RHS
      &  &  &  &  & b  & b & b & b & \smash{\Bigg\}} & d\\ % RHS   
      &  & & c&c& c& c &c& c  % RHS
  \end{array}
\]
\end{document}

サンプルコードの出力

ここでは便宜上、既存の最大サイズを使用しています\Biggが、必要に応じて、より大きなサイズを構築して、「大きな」フェンスを構築するために使用される寸法を拡大することもできます。

\def\Big#1{{\hbox{$\left#1\vbox to11.5\p@{}\right.\n@space$}}}
\def\bigg#1{{\hbox{$\left#1\vbox to14.5\p@{}\right.\n@space$}}}
\def\Bigg#1{{\hbox{$\left#1\vbox to17.5\p@{}\right.\n@space$}}}

ステップ間の差は3ポイントなので、次の2つのステップは

\def\biggg#1{{\hbox{$\left#1\vbox to20.5\p@{}\right.\n@space$}}}
\def\Biggg#1{{\hbox{$\left#1\vbox to23.5\p@{}\right.\n@space$}}}

(これらの定義は からのものでありplain.tex、コンピュータの最新フォントを前提としています。)

答え3

\phantom{c}最初の大きな の 3 行目の前のセルの 1 つに を追加すればarray、コードをさらに調整する必要はありません。

ここに画像の説明を入力してください

\documentclass{article}
\usepackage{amsmath,amsthm,array}% http://ctan.org/pkg/{amsmath,amsthm,array}
\newcommand{\twolinebrace}{\left.\kern-\nulldelimiterspace\begin{array}{@{}c@{}}   \\\\\end{array}\right\}}
\newtheorem{theorem}{Theorem}
\begin{document}
\[
  \renewcommand{\arraystretch}{1.25}
  \begin{array}{@{}l@{\quad}l@{}}
    \begin{array}{lllllllll}
      &  &  &  &  &a & a & a &a\\ % RHS
      &  &  &  &  &   & b & b & b \\ % RHS   
      &  &  & \phantom{c}&c& c& c &c& c  % RHS
    \end{array} & \twolinebrace\text{d} \\
        \begin{array}{lllllllll}
      &  &  &  & a &a & a & a &a\\ % RHS
      &  &  &  &  & b  & b & b & b \\ % RHS   
      &  &  & c&c& c& c &c& c  % RHS
    \end{array} & \twolinebrace\text{d} 
  \end{array}
\]
\end{document}

補遺: コードの1つで、少し調整が必要そうなのはマクロです\twolinebrace。中括弧が三つ2 行だけではなく、新しいマクロを定義 (および使用) することもできます\threelinebrace。そのマクロの名前は次のとおりです。

\newcommand{\threelinebrace}{\left.\kern-\nulldelimiterspace\begin{array}{@{}c@{} \\\\\\ \end{array}\right\}}

と比較して\twolinebrace、新しいマクロには追加の\\ペアが備わっています。

関連情報