
我正在嘗試創建一個具有三列的科學海報(在投影機環境中)。它工作得很好,我唯一的問題是列之間的間隔太大,我找不到覆蓋投影機分配的預設值的方法。
我知道,在表格環境中,我可以使用環境\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
我自己也在努力解決這個問題(儘管是為了演示而不是製作海報),我想到的最簡單的解決方案是插入負水平空間。這有點hacky,但它提供了很大的靈活性。
\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}