# Selective overlay option of textblock with the textpos package

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.

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.
• Hmm: I was fairly confident that would work – boo. I presume the rush is over for you, now, but I'll look at this again. I have a \TPoptions macro implemented in a version 1.8b1 which might be relevant here, and this should prompt me to release that, if only to add a note about how to achieve this sort of thing. Thanks for letting me know. – Norman Gray Jan 20 '16 at 11:23
• I've tried using \TPoptions to overlay just one textbox on the same page as another that is underneath the main text, and haven't got it to work. Am I missing something? – hertzsprung Oct 27 '16 at 12:34
• @hertzsprung The \TPoptions macro allows you to change the in-play options on a per-page basis, but it can't change the effect of those options. On a particular page, the {textblock} material will appear either all before or all after the non-{textblock} material. So no, there's no current way to overlay just one textblock. Doing so would not be impossible, I don't think, but I suspect it would require major surgery to the package. – Norman Gray Oct 28 '16 at 12:55