# Separation between columns in beamer

I am trying to create a scientific poster (in a beamer environment) with three columns. It works very well, my only problem is that the separation between the columns is too large and I cannot find a way to overwrite the default value assigned by beamer.

I know, in a tabular environment, I could have used \renewcommand\tabcolsep{6pt} Is there anything similar for a columnenvironment?

I use \begin{columns} \column{.3\textwidth} for my columns. And I use the beamerposter package, but from my understanding it is embedded in a beamer document class, so I assume that beamer's commands would work as well.

Thank you. Here is a working example. You can see that the space between two columns is about 2 cm, I would like to be able to modify this space.

\documentclass{beamer}
\mode<presentation>

\usepackage{lipsum}
\usepackage[orientation=landscape,size=a0,scale=1.4,debug]{beamerposter}

% Display a grid to help align images
\beamertemplategridbackground[1cm]

\begin{document}
\begin{frame}[t]{}
\vspace{-40pt}
\begin{columns}[t]
\begin{column}[t]{0.305\linewidth}

\lipsum

\end{column}

\begin{column}[t]{0.305\linewidth}

\lipsum

\end{column}

\begin{column}[t]{0.305\linewidth}

\lipsum

\end{column}

\end{columns}
\end{frame}
\end{document}

• Did you use \begin{columns} \column{.3\textwidth} for your columns, though it should be doing it automatically? Can you give us an example code? Also are you using beamer or beamerposter? Apr 23 '12 at 16:38
• I modified the question, to include more details. Apr 23 '12 at 16:48
• Which document class are you using? Apr 23 '12 at 17:12
• I am using beameras a document class Apr 23 '12 at 17:17
• I processed your code and I got this . Are you getting something different? Apr 23 '12 at 18:10

The only way to decrease the intercolumn space is to increase the column width. You can do this manually, or you can define auxiliary lengths to do the calculations for you; in the following example, you simply set the desired value for \MyColSep and the \MyColWd will give you the column width producing the desired separation:

\documentclass{beamer}
\usepackage[orientation=landscape,size=a0,scale=1.4,debug]{beamerposter}
\usepackage{lipsum}
\usepackage{calc}

\beamertemplategridbackground[1cm]

\newlength\MyColSep
\setlength\MyColSep{1cm}
\newlength\MyColWd
\setlength\MyColWd{0.3333\textwidth-0.6666666\MyColSep}

\begin{document}

\begin{frame}[t]{}

\begin{columns}[t]

\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}
\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}
\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}

\end{columns}

\end{frame}

\end{document}


To control the margins you can use \setbeamersize,a and the onlytextwidth option for the columns environment:

\documentclass{beamer}
\usepackage[orientation=landscape,size=a0,scale=1.4,debug]{beamerposter}
\usepackage{lipsum}
\usepackage{calc}

\beamertemplategridbackground[1cm]

\setbeamersize{text margin left=3cm,text margin right=3cm}
\newlength\MyColSep
\setlength\MyColSep{1cm}
\newlength\MyColWd
\setlength\MyColWd{0.3333\textwidth-0.66666\MyColSep}

\begin{document}

\begin{frame}[t]{}

\begin{columns}[onlytextwidth]
\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}
\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}
\begin{column}[t]{\MyColWd}
\lipsum[1-3]
\end{column}
\end{columns}

\end{frame}

\end{document}

• This code reduces the spacing between columns, but also affects the margins. The objective is to keep the 3 cm margins on the sides (so text is not too close to the sides of my poster) but have a 1cm interval between columns (so I do not loose too much space on the poster). Apr 23 '12 at 19:14
• @MatD. I've updated my answer. Apr 23 '12 at 19:38

In order to get what you want, you need to adjust both the outer margin of the poster and the size of columns. If you just increase the proportion of the \textwidth your columns take up, you will have a much too narrow left and right margin, so you need to adjust that manually as well. Here's an example:

\documentclass{beamer}
\usepackage{beamerposter}
\usepackage{lipsum}

\begin{document}

\begin{frame}
\begin{columns}
\column{.33\textwidth} % adjust this size as necessary (or use Gonzalo's command).
\lipsum[1-5]
\column{.33\textwidth}
\lipsum[1-5]
\column{.33\textwidth}
\lipsum[1-5]
\end{columns}
\end{frame}

\end{document}