
Я пытаюсь создать научный постер (в среде beamer) с тремя столбцами. Он работает очень хорошо, моя единственная проблема в том, что расстояние между столбцами слишком велико, и я не могу найти способ перезаписать значение по умолчанию, назначенное beamer.
Я знаю, что в табличной среде я мог бы использовать \renewcommand\tabcolsep{6pt}
Есть ли что-нибудь подобное для column
среды?
Я использую \begin{columns} \column{.3\textwidth}
для своих колонок. И я использую пакет beamerposter
, но, насколько я понимаю, он встроен в beamer
класс документа, поэтому я предполагаю, что команды beamer тоже будут работать.
Спасибо. Вот рабочий пример. Вы видите, что расстояние между двумя столбцами составляет около 2 см, я хотел бы иметь возможность изменять это расстояние.
\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}
решение1
Единственный способ уменьшить межколоночное пространство — увеличить ширину столбца. Вы можете сделать это вручную или определить вспомогательные длины, которые выполнят вычисления за вас; в следующем примере вы просто устанавливаете желаемое значение для \MyColSep
и \MyColWd
получите ширину столбца, обеспечивающую желаемое разделение:
\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}
Для управления полями можно использовать \setbeamersize
,a и onlytextwidth
опцию для columns
среды:
\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}
решение2
Чтобы получить желаемое, вам нужно приспособитьсяобавнешнее поле постера и размер колонок. Если вы просто увеличите пропорцию \textwidth
занимаемой вашими колонками площади, у вас будут слишком узкие левое и правое поля, поэтому вам нужно будет настроить их вручную. Вот пример:
\documentclass{beamer}
\usepackage{beamerposter}
\setlength{\oddsidemargin}{1in} % adjust as necessary
\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}
решение3
Я сам с этим боролся (хотя для презентации, а не для создания постера), и самое простое решение, которое я придумал, — это вставить отрицательное горизонтальное пространство. Это немного хакерски, но обеспечивает большую гибкость.
\documentclass{beamer}
\usepackage{beamerposter}
\usepackage{lipsum}
\begin{document}
\begin{frame}
\begin{columns}
\begin{column}{.33\textwidth}
\lipsum[1-5]
\end{column}
\hspace{-0.33cm}\begin{column}{.33\textwidth}
\lipsum[1-5]
\end{column}
\hspace{-0.33cm}\begin{column}{.33\textwidth}
\lipsum[1-5]
\end{column}
\end{columns}
\end{frame}
\end{document}