Finally the definitive full-frame graphic commands for beamer in LaTeX

After my two (!) previous posts on the same topic, it’s time to give my final entry for the competition of the definitive full-frame graphics command for use with beamer in LaTeX. To seal the deal, I do not propose 1, but 4 commands, depending on your use case:

Download

Get the command definitions from lines 59-132 in my presentation style file beamerthemeJD.sty. Note that package adjustbox is required as well. The style definition for the overlay text ffgcaption must be tailored to your presentation style (as I use my custom colour names in there). I opted for an unobtrusive, small overlay with white text over a semi-transparent black background. So simply removing the occurrences of jd might be enough customisation for most.

Usage

The basic command has remained unchanged, and is to be called outside of a frame environment:

\fullframegraphic[optional credits argument]{path/to/image}

Exemplary result with a corny sample image:

However, it only works correctly if aspect ratio of the image matches your slide format (4:3, 16:10, 16:9 being the most common). If not, ugly white bars appear at the page borders.

If you do not want to manually crop all your images, I have prepared to more commands: for “tall” images, use the “w” for width variant: it automatically crops excess content top and bottom, and always displays the image at full frame width:

\fullframegraphicw[optional credits]{path/to/tall-image}

If instead you are blessed with “wide” images, use the “h” for height variant; it automatically crops excess content left and right and always displays the image at full frame height:

\fullframegraphich[optional credits]{path/to/wide-image}

If you need more customisation, use the “s” variant, whose third argument allows to add any content to the tikzpicture environment after the image has been placed. This example shows how to place a (heavily customised) tooltip node, manually placed using xshift and yshift, anywhere on the slide. For the other styles, you typically would want to define a custom style (similar to ffgcaption) to save you from typing:

\fullframegraphics[optional credits]{path/to/image}{%
    \node[at=(current page.north west),
          fill=green,
          fill opacity=.35,
          font=\footnotesize,
          inner xsep=3pt,
          inner ysep=5pt,
          rounded corners=1pt,
          text=black!75!green,
          text opacity=1,
          xshift=3.5cm,
          yshift=-0.9cm]
       {Tooltip!};
}

For a more full-blown usage example of the last command (including overlay specifications to uncover the tooltip), see file models.tex from the same repository.

References

Relevant questions on LaTeX Stack Exchange:

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.