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?

        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.

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

1 Answer 1


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.

  • Unfortunately, the hack doesn't work. Tried all sort of combinations. +1 for explaining why it would be difficult.
    – alfC
    Jan 20, 2016 at 1:17
  • 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. Jan 20, 2016 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? Oct 27, 2016 at 12:34
  • 1
    @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. Oct 28, 2016 at 12:55

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.