I've worked myself into a rut. A very, very hacky, plain-TeX-y rut.
I'm creating a poster with beamerposter
. Content is split logically into block
environments, and customization is done through the hooks beamer provides (\addtobeamertemplate
). That's where the LaTeX ends.
Here is my code:
\documentclass{beamer}
\usepackage[english]{babel}
\usepackage[orientation=portrait,size=a0]{beamerposter}
\mode<presentation>{%
\usetheme{Frankfurt}%
}
\title[short]{Looonnger!!}
\author{me}
\institute{grubby}
\date{\today}
% needed to stretch out title box cleanly, but likely the root of my problem
\setbeamersize{text margin left = -5pt, text margin right = -5pt}
\addtobeamertemplate{block begin}
{}
{\vspace{1ex plus 0.5ex minus 0.5ex} % Pads top of block
% separates paragraphs in a block
\setlength{\parskip}{24pt plus 1pt minus 1pt}
\addtolength{\leftskip}{1em} %%% awful hack for left/right padding
\addtolength{\rightskip}{1em}} %%% that doesn't even work right
\addtobeamertemplate{block end}
{\vspace{2ex plus 0.5ex minus 0.5ex}}% Pads bottom of block
{\vspace{10ex plus 1ex minus 1ex}} % Seperates blocks from each other
\addtobeamertemplate{description item}
{\hspace{2em}} % trying to compensate for the awful hack
{}
\usepackage{mwe}
\begin{document}
\begin{frame}[t]{}
\vspace{-8pt}
\begin{beamercolorbox}{}
\maketitle
\end{beamercolorbox}
\vspace{10ex}
\begin{block}{Block A}
\lipsum
\begin{description}[longest label]
\item[short] Short stuff
\item[long] Longer stuff
\item[longest label] Longest stuff (insert cat)
\end{description}
\begin{itemize}
\item I'd like to change the margins here, as well.
\item The macros \texttt{\textbackslash leftskip} and friends
don't work very well for environment-heavy \LaTeX{} document
classes such as \texttt{beamer}
\item Also, for some reason, using \texttt{\textbackslash verb}
kills \emph{everthing}.
\end{itemize}
\end{block}
\end{frame}
\end{document}
and what it produces:
Note that the bullets/balls for the itemize
environment are flush with the left margin. Description environment would do the same thing if it weren't for the explicit customization. All text also goes way too close to either side; amenable through \leftskip
but not \rightskip
. It's an absolute mess.
My immediate goal is to be able to set the right margin so text doesn't go to close. My 'better' goal is to set inner padding for block contents so that I won't have to set the margins for each environment individually, which will quickly get out of hand. And finally, as I said in a comment in the code, I believe the root of my problem is how I stretch out the title to give it a cleaner look (not just a colored block on a white background), but I'm pretty sure that'd be a separate question.
From the comments:
Briefly, I was aiming for (nothing special) a title whose color spans the entire top of the page and content in blocks where the content is padded by about 2 or 3em to taste.
Best Answer
Using
\leftskip
and\rightskip
is doomed to failure when lists are involved.Say
\usepackage{changepage}
in the preamble andRemove the
\addtobeamertemplate{description item}
part.For
\verb
you have to declare your frame asfragile
:I'd also avoid doing
but it's just me.