I am using the tikzposter class to create a poster and have three columns extending almost to the bottom of the page. I would like to stretch the space in between blocks
so that the bottoms of the final block in each column line up. A solution which could be modified pad the contents of the block to achieve the same thing would be ideal for if I ever make another poster where the columns are not as similarly sized. I know this is possible in the beamerposter class, but I have no desire to switch poster classes at this late stage (and tikzposter has very nice default themes).
Since tikzposter positions the blocks using tikz, and not the normal LaTeX positioning, it seems like using rubber lengths or \vfill
directly is out. So, is there a reasonable way of doing this? I don't mind a solution that hacks around with the tikzposter class itself, or has to write things to the aux file.
Best Answer
I ended up solving it myself. Below is the code I used; if you put it in
myposter.sty
then use\usepackage[colalign]{myposter}
to enable the alignment.It works by saving the natural heights of all columns into the aux file, along with how many blocks there are. Then next compilation, for each column, it looks at the difference between the stored height and the maximum stored height, divides that by the number of blocks, and adds that much padding inside each block (at the top and bottom.)