[poppler] Understanding the rendering pipeline
Albert Astals Cid
aacid at kde.org
Sun Oct 18 13:57:20 PDT 2009
A Divendres, 9 d'octubre de 2009, Tuom Larsen va escriure:
> I'm trying to read the sources but I'm not sure if I quite follow. Is this
> so far correct:
> - poppler reads a pdf, gets the number of pages
> - pick one page, locate xref, read its page object, retrieve the rest of
> objects and xobjects
> - if a command is found, binary-search for the right operator function and
> call it
> - ? (dump()?)
> - everything gets rendered to a memory buffer on init or view_set_page()
> and bit-blipped to a window on expose event
> What I don't get is how and where are the operators rendered to the memory
Well, each of the commands get called and this goes through the outputdev that
> How gets a page state transformed to pixels?
By commands like "draw line"
> Is there performed a binary search for every command in pdf?
Yes, but it's actually cheap so don't bother optimizing that it'll give you a
0.00000001% performance boost at most.
More information about the poppler