SPB Git

Repository Public Research preview

beamer-overflow.md 2.5 KB

# Beamer: finding slides that overflow

# What happens

A frame has a fixed height. When its content is taller, Beamer does not start a new slide: the extra lines are set below the bottom edge and never appear. The build succeeds. The only trace is a log line such as

text
Overfull \vbox (42.48938pt too high) detected at line 22

where the line is that of \end{frame}.

# How the tool maps it to a frame

  1. The log is read in order, counting the pages shipped out; an overfull vbox reported after page n belongs to page n + 1.
  2. Beamer's .nav file records the first and last page of each frame (a frame with overlays spans several pages).
  3. Frames are listed from the source in order — \begin{frame}{Title} or \frametitle{Title} — with file and line.

When the number of frames in the .nav equals the number found in the source, the mapping is exact and the report says exact (.nav). Otherwise (frames produced by a macro or a loop, \againframe, frames inside conditionals) it falls back to the line number of the warning and says the mapping is approximate.

# Reading the report

beamer deck.tex returns:

  • overflowing_frames — number, title, file, line, how many points too high, pages;
  • frames_with_overfull_hbox — content too wide (a long formula, a wide table or image);
  • frames_without_title — title pages and outline frames are not counted;
  • frames — every frame with its page range and number of overlay slides.

As a rule of thumb at 10–11 pt, a line of text is 12–14 pt high: an overflow of 42 pt is about three lines lost.

# Fixing

  1. Cut. A slide that overflows usually says too much.
  2. Split into two frames.
  3. Reduce a figure: height=0.6\textheight instead of a width.
  4. \begin{frame}[allowframebreaks] for bibliographies and long lists (not with overlays).
  5. \begin{frame}[shrink=5] or a smaller font for one frame, as a last resort: the audience sees the difference.
  6. [t] alignment does not gain space; it only moves the content up.

# What is not detected

  • Material placed with textpos, tikz overlay / remember picture, or \vspace*{-…} tricks: it is not part of the box Beamer measures.
  • Content hidden behind the footline or a logo: the frame box fits, the template covers it.
  • Images wider than the slide inside a \makebox or \resizebox that hides the excess.
  • Text that fits but is unreadably small.

For these, look at the pages: text deck.tex --from N --to N shows which text reached page N, and nothing replaces opening the PDF.

Files main
Menu

Theme