[Tex/LaTex] How to get blocks of same height in beamer columns and minipage framework

beamerblockminipage

I need help on something that will certainly seem very simple, but I cannot figure out:

I use columns and minipage, in beamer, to have one block on the left and one on the right corner of the page. Then I have a 3rd block at their bottom that is as wide as the page.

Thanks to minipage, the first two blocks have same width. However, I don't know how to "lengthen" the shorter one so they have the same length.

I also have a second question which is why is the 3rd block not the same width has the top ones?

Thanks for your help.

MWE:

\documentclass{beamer}
\usetheme{Warsaw}

\begin{document}

\begin{frame}
\begin{columns}%[T]

\column{0.5\textwidth}
\begin{minipage}[c][0.5\textheight][c]{\linewidth} 
\begin{block}{block1}
  text
\end{block}
\end{minipage}
\column{0.5\textwidth}

\begin{minipage}[t][0.5\textheight][c]{\linewidth} 
\begin{block}{block2}
\[
\resizebox{25mm}{!}{$\displaystyle\begin{bmatrix}
f_{1} & f_{2} & f_{3}\\ s_{1} & 0 & 0 \\ 0 & s_{2} & 0 
\end{bmatrix}$}
\]
\end{block}

\end{minipage}
\end{columns}

\begin{block}{block3}

\end{block}
\end{frame}

\end{document}

Best Answer

  • The width of the 3rd block is correct, your first two trespass into the margin as there is not enough space on a single line. You specify both to have .5\textwidth which does not leave any space for the separation between them. To solve this, reduce their width and use the onlytextwidth option of the column environment.

  • to make the blocks equally height, place your minipages inside them.


\documentclass{beamer}
\usetheme{Warsaw}

\begin{document}

\begin{frame}
\begin{columns}[onlytextwidth]
    \begin{column}{0.45\textwidth}
        \begin{block}{block1}
          \begin{minipage}[c][0.16\textheight][c]{\linewidth} 
            text
          \end{minipage}
        \end{block}
    \end{column}
    \begin{column}{0.45\textwidth}
        \begin{block}{block2}
            \[
                \begin{bmatrix}
                    f_{1} & f_{2} & f_{3}\\
                    s_{1} & 0 & 0 \\ 
                    0 & s_{2} & 0 
                \end{bmatrix}
            \]
        \end{block}
    \end{column}    
\end{columns}

\begin{block}{block3}

\end{block}
\end{frame}

\end{document}

enter image description here

Related Question