3

I have used the array mode to write cases. But sometimes the lines are too closed to each others, I want to add a break line between them, sometimes it works, but sometimes no.

Here is my MWE:

\documentclass{article}
\usepackage{amsmath, mathtools, amssymb}
\usepackage{fouriernc, fourier}
\usepackage{esvect}
\begin{document}
\[\left\{\begin{array}{l}
\left[\begin{array}{l}
\vv{BM}\uparrow\uparrow \vv{BC}\\
\vv{BM}\uparrow\downarrow \vv{BC}
\end{array}
\right.
\\
\left[\begin{array}{l}
\vv{B'M'}\uparrow\uparrow \vv{B'C'}\\
\vv{B'M'}\uparrow\downarrow \vv{B'C'}
\end{array}
\right. 
\end{array}
\right.
\]
\[\left[\begin{array}{l}
\left\{\begin{array}{l}
A\in \Delta\\
B\not \in \Delta 
\end{array}
\right.
\\
\left\{\begin{array}{l}
A\notin \Delta\\
B \in \Delta. 
\end{array}
\right.
\end{array}
\right.\]
\end{document}

After compiling, you can see the difference, there is no break line between the second and the third line of the first array, but there is one in the second array.

So how can I do this?

2
  • You can probably play with \arraystretch
    – JPi
    Commented Nov 24, 2014 at 4:33
  • 1
    Unrelated to the problem, but you should use \notin instead of \not\in (check the difference in the output).
    – egreg
    Commented Nov 24, 2014 at 7:44

2 Answers 2

3
\[\left\{\begin{array}{l}
\left[\begin{array}{l}
\vv{BM}\uparrow\uparrow \vv{BC}\\
\vv{BM}\uparrow\downarrow \vv{BC}
\end{array}
\right.
\\[2.5ex]%--------------------------------------------adding a length here
\left[\begin{array}{l}
\vv{B'M'}\uparrow\uparrow \vv{B'C'}\\
\vv{B'M'}\uparrow\downarrow \vv{B'C'}
\end{array}
\right. 
\end{array}
\right.
\]

enter image description here

4

For additional space between lines you can use also a stretchable amount, like \bigskipamount. This space will adjust automatically to fit into your page.

If you are concerned with lines getting too close to each other, you can increase space between rows using the command \fontsize{}{} followed by a \selectfont. The first argument indicates characters' size, the second the baseline skip amount. Then \normalsize is used to revert to previous amount:

\documentclass{article}

\usepackage{mathtools, amssymb}
\usepackage{fouriernc, fourier}
\usepackage{esvect}

\begin{document}

\fontsize{10}{20}\selectfont

\[
  \begin{cases}

    %\begin{cases}

    \left[
    \begin{array}{l}
      \vv{BM}\uparrow\uparrow \vv{BC}\\
      \vv{BM}\uparrow\downarrow \vv{BC}
    \end{array}
    \right.

    %\end{cases}

  \\[1.8\bigskipamount]       % that means 1.8*\bigskipamount

    %\left[
    %\begin{array}{l}

    \begin{cases}
      \vv{B^\prime M^\prime }\uparrow\uparrow \vv{B^\prime C^\prime }\\
      \vv{B^\prime M^\prime }\uparrow\downarrow \vv{B^\prime C^\prime }
    \end{cases} 

    %\end{array}
    %\right.

  \end{cases}
\]

\normalsize

\[
  \begin{cases}

    %\begin{cases}

    \left[
    \begin{array}{l}
      \vv{BM}\uparrow\uparrow \vv{BC}\\
      \vv{BM}\uparrow\downarrow \vv{BC}
    \end{array}
    \right.

    %\end{cases}

  \\[1.8\bigskipamount]       % that means 1.8*\bigskipamount

    %\left[
    %\begin{array}{l}

    \begin{cases}
      \vv{B^\prime M^\prime }\uparrow\uparrow \vv{B^\prime C^\prime }\\
      \vv{B^\prime M^\prime }\uparrow\downarrow \vv{B^\prime C^\prime }
    \end{cases} 

    %\end{array}
    %\right.

  \end{cases}
\]

\end{document}

Some other suggestions:

  • if you are doing cases, just use cases environment, it's easier and better looking than array

  • amsmath is already loaded by mathtools, you don't need it

  • I personally prefer to put a ^\prime instead of an apostrophe ', even if they give the same output: they are conceptually different and it can be useful in case of mass replacement

  • since there are people reading your code, it's best if it's written in a more readable way. That stimulates users to answer you. See Writing readable LaTeX

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .