Instead of looking to insert "exactly the same amount of blank space as if the content would be typeset", is it possible to generate, in one compile job, the document's preview version (*) with its full version (non-interactive) table of contents (TOC), index, list of figures, ... instead ?

(*) using hidden texblocks, or \new\ifhidden ... \ifhidden ... \else ... \fi ( without the spooky phantom thingies ), showing a text block indicating "this part is hidden", to hide whatever is required ( headers, linebreaks, tables, figures etc. )

Or...

Create a batch file to
- first generate the full version, then
- generate the preview version, then
- replace the preview version's TOC, index, list of figures, ... with the full version's (non-interactive one) ?

Alan