You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by "Peter B. West" <pb...@powerup.com.au> on 2003/06/16 17:42:55 UTC

Design notes - layout

Fopdevs,

Triggered by Victor's comments on the Session/Document division, I have 
been thinking about layout issues in a general way, focussed on my 
feeling that the processing of the Flow Objects needs to be driven by 
the Area tree processing; i.e. that the FO processing needs to be pulled 
by the demands of area layout.  I have three diagrams illustrating the 
preliminary ideas.  Because of size constraints associated with mailers, 
I will post these in three messages.

The first, attached concerns Document level.  In terms of alt.design's 
pull parser, Document will be responsible for setting up the SAX parser 
and the FoXmlEvents buffer as separate threads.  It pulls through and 
processes the layout-master-set and declarations subtrees, creating 
Declarations and LayoutMasterSet objects.  One of the methods of the 
LayoutMasterSet is pageFactory(), however named, for providing a new 
Page object meeting particular constraints.

When these are done, the DocumentLayout process (which may or may not be 
a separate object) starts a loop comprising getPageSequence and layout 
PageSequence methods.  GetPageSequence interrogates the FoXmlEvents 
buffer for new page-sequences.

LayoutPageSequence is illustrated in the following message.

Peter
-- 
Peter B. West  http://www.powerup.com.au/~pbwest/resume.html