On Sat, Mar 08, 2008 at 09:54:16AM +0100, Taco Hoekwater wrote:
David Kastrup wrote:
Hi, sometimes on a long run one would like to be able to take a look at the current state of a PDF being produced.
I don't know whether there is something like a progressive PDF format: likely not.
I doubt it would be possible to do, that even with changes to pdftex. In any case you end up with either no embedded fonts at all, or a rather massive PDF with each page having its own font subsets and images.
It would be possible using incremental updates (PDF spec: `3.4.5 Incremental Updates'). Each page would add an update section. It avoids PDFs having own fonts and images for each page. Nothing needs to be embedded, if the character or image is already embedded on the previous pages. But if a character of an already embedded font is missing, then the font with a larger subset needs embedding again.
But if I could send a signal to my PDFTeX/LuaTeX process, and this would cause it (at least if it would not currently be in a \shipout) to flush the current buffers, create a copy of the current PDF/DVI file under a snapshot name, properly finish/close it (writing reference table/DVI trailers) and then resume regular work, this would be quite dandy.
The idea is interesting, but I have absolutely no time to implement it. I fear that getting the details right may take quite some time (forking is easy, the tricky bit is duplicating the open files and file handles).
Duplicating open files/file handles is not necessary. It would
need a procedure that copies the PDF file so far to a new file and
finishing the new file without changing the internal states of pdfTeX.
But I agree both methods would cost lots of time.
Yours sincerely
Heiko