Date: 2005-02-17T07:52:26
Editor: JeremiasMaerki
Wiki: XML Graphics - FOP Wiki
Page: TableLayout
URL: http://wiki.apache.org/xmlgraphics-fop/TableLayout
Notes on table layout
New Page:
= Notes on table layout =
== Grouping a bunch of cells into rows ==
It is possible to put table-cell elements as direct children of a table-body.
In this case the table-body|header|footer FO builds table-row FOs from its
table-cell FOs when it ends (in the FO tree building stage). This way the
layout manager doesn't have to deal with the difference. It can always work on
table-row objects.
== Notes on the separate border model ==
In the separate border model the individual cell borders don't interact with
their neighbours which makes it relatively easy to layout. For a page or column
you'd simply take the table-header (if any), then add calculate the BPD of the
table-footer (if any). The remaining available BPD is filled with table-rows as
possible. Backtracking may be necessary to create an optimal layout.
== Notes on the collapsing border model ==
In the collapsing border model the individual cell interact with neighbours.
There are several factors influencing the height of a row (* marks the items
that also apply to the separate border model):
* the content of each cell (*)
* the explicit BPD specified on cells and/or rows (*)
* the resolved border width (see note below)
'''Note:''' Depending on the chosen break position the border width for the
after edge of the cells (or rather grid units) in the last row before a
table-footer may be different than without the table-footer present (the before
edge of the table-footer has an influence). It also depends on whether a row is
the last row or not (the after edge of the table and body have an influence).
This has a consequence on the design of the table layout, meaning that the
border resolution cannot simply be done before laying out the table. It has to
be done on-the-fly as is subject to backtracking.
== Notes on column spanning ==
Column is relatively easy. Each row manages a list of all grid units and their
content. (See also {{{Row.CellInfo}}})
== Notes on row spanning ==
'''''TBD'''''
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]