[Tex/LaTex] Selective overlay option of textblock with the textpos package

overlaystextpos

The texpos package has an option called [overlay] that, when loading the package makes all the text boxes textblocks be above (obscuring) other elements of the page.

Is there a way to control whether or not a particular textblock overlays or not?

\documentclass{beamer}
\usepackage[overlay]{texpos}
\begin{document}
    \begin{frame}{title}
        Other elements
        \begin{textblock}{6}(5,7.1) %is there an option to NOT overlay this particular one
           Hello % or include a bulky image here.
        \end{textblock}
    \end{frame}
\end{document}

Since this is an emergency (my presentation is tomorrow) 🙂 I will
give one or two 100 point bounties for a solution or a workaround.

Best Answer

You can't do this in general: the [overlay] option works by adjusting the TeX \shipout command so that all of the {textblock} material on a page is output either before (non-overlay) or after (overlay) the non-{textblock} material.

Since this is a presentation, however, you might be able to hack this on a per-page basis. Try setting \makeatletter\TP@overlayfalse before the page you want to hack, and then \TP@overlaytrue after it. That should result in all of the {textblock} environments on the affected page being non-overlay.

You might have to play around with the precise positioning of those commands, but putting them before and after the {frame} environment should work. I haven't tested this – let us know how you get on.