[poppler] Incremental update in poppler

John C Barstow jbowtie at amathaine.com
Wed Jul 12 02:37:08 PDT 2006


> >The next time 'PDFDoc::SaveAs' is called, all the queued objects are
> >written (with a new XRef/Trailer and all the needed stuff) to the file.
> 
>          What are you doing about existing Linearization?  You can't 
> keep it there as it is no out of sync with the new data you've written...
> 
A linearized document with updates is expected to be handled the same
way as a standard document. If the size in the linear dictionary does
not match the actual file size, you are supposed to assume the PDF has
been updated and fall back to non-linear handling. (Actually, you could
do an analysis here to decide whether or not to stay in linear mode, but
I don't think that's practical for the current state of poppler code.)

> >I'm not a Poppler-guru, but the only way I see to add this 'live update'
> >feature is that PDFDoc::addIncrementalObject should add the updated
> >Object/Xref/Trailer directly into the stream.
> 
>          Or follow my original suggestion of doing real object 
> handling in Xpdf - which would then enable live changes/updates to any object.
> 
My reading of the spec indicates that the addIncrementalObject approach
is correct, but I'd personally prefer to see the implementation ironed
out at an application level (such as xpdf or evince) before pushing it
into the library.



More information about the poppler mailing list