From: William Victor Mote Date: Tue, 22 Apr 2003 03:01:53 +0000 (+0000) Subject: Move content from design/understanding/layout_managers.xml to design/layout.xml. X-Git-Tag: Root_Temp_KnuthStylePageBreaking~1576 X-Git-Url: https://source.dussan.org/?a=commitdiff_plain;h=209c721c00f87a9a65ea89105f659626fe736190;p=xmlgraphics-fop.git Move content from design/understanding/layout_managers.xml to design/layout.xml. git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@196306 13f79535-47bb-0310-9956-ffa450edef68 --- diff --git a/src/documentation/content/xdocs/design/book.xml b/src/documentation/content/xdocs/design/book.xml index fceab0252..d61836598 100644 --- a/src/documentation/content/xdocs/design/book.xml +++ b/src/documentation/content/xdocs/design/book.xml @@ -27,7 +27,6 @@ understanding/book.xml, WHICH SEE FOR AN EXPLANATION. - diff --git a/src/documentation/content/xdocs/design/layout.xml b/src/documentation/content/xdocs/design/layout.xml index 94a657edc..4575a1716 100644 --- a/src/documentation/content/xdocs/design/layout.xml +++ b/src/documentation/content/xdocs/design/layout.xml @@ -12,6 +12,18 @@ +

The role of the layout managers is to build the Area Tree by using the +information from the FO Tree. The layout managers decide where information +is placed in the area tree.

+

A layout manager is typically associated with an FO Object but not always.

+ +

The layout managers are in between the FO Tree and the Area Tree. They get +information from the FO Tree and create areas and build the pages. They +hold the state of the layout process as it builds up the areas and pages. +They also manage the handling of breaks and spacing between areas.

+

FO Objects can have two types of properties, ones that relate to the layout and ones that relate to the rendering. THe layout related properties area used by the layout managers to determine how and where to create the areas. The render related properties should be passed through to the renderer in the most efficient way possible. +

+

The aim of the layout system is to be self contained and allow for easy changes or extensions for future development. For example the @@ -254,6 +266,11 @@ layoutmanger. These regions will handle the addition and removal of the separator regions when before floats/footnotes area added and removed.

+

Footnotes and Before Floats are placed in special areas in the body region +of the page. The size of these areas is determined by the content. This in +turn effects the available size of the main reference area that contains +the flow.

+

A layout manager handles the adding and removing of footnotes/floats, this in turn effects the available space in the main reference area.

Side Floats @@ -265,9 +282,12 @@ on the clear value of subsequent blocks. The keep status of the block is also effected as there must be enough space on the page to fit the side float.

-

- -

+

Side floats alter the length of the inline progression dimension for the +current line and following lines for the size of the float.

+

This means that the float needs to be handled by the block layout manager +so that it can adjust the available inline progression dimension for the +relevant line areas.

+
Unresolved Areas @@ -366,6 +386,15 @@ when the value is resolved.
Block Areas +

When a block creating element is complete then it is possible to build the +block area and add it to the paprent.

+

A block area will contain either more block areas or line areas, which are +special block areas. The line areas are created by the LineLayoutManager +in which the inline areas flow into.

+

So a block area manager handles the lines or blocks as its children and +determines things like spacing and breaks.

+

In the case of tables and lists the blocks are stacked in a specific way +that needs to be handled by the layout manager.

The block area has info about the following:

diff --git a/src/documentation/content/xdocs/design/understanding/book.xml b/src/documentation/content/xdocs/design/understanding/book.xml index f2afa5d55..dd9c2589d 100644 --- a/src/documentation/content/xdocs/design/understanding/book.xml +++ b/src/documentation/content/xdocs/design/understanding/book.xml @@ -31,7 +31,6 @@ PARENT DIRECTORY! -
diff --git a/src/documentation/content/xdocs/design/understanding/layout_managers.xml b/src/documentation/content/xdocs/design/understanding/layout_managers.xml deleted file mode 100644 index 4fb8a58e4..000000000 --- a/src/documentation/content/xdocs/design/understanding/layout_managers.xml +++ /dev/null @@ -1,61 +0,0 @@ - - - - -
- Layout Managers -
- -

The role of the layout managers is to build the Area Tree by using the -information from the FO Tree. The layout managers decide where information -is placed in the area tree.

-

A layout manager is typically associated with an FO Object but not always.

- -

The layout managers are in between the FO Tree and the Area Tree. They get -information from the FO Tree and create areas and build the pages. They -hold the state of the layout process as it builds up the areas and pages. -They also manage the handling of breaks and spacing between areas.

- - -

FO Objects can have two types of properties, ones that relate to the layout and ones that relate to the rendering. THe layout related properties area used by the layout managers to determine how and where to create the areas. The render related properties should be passed through to the renderer in the most efficient way possible. -

- -
- Block Areas - -

When a block creating element is complete then it is possible to build the -block area and add it to the paprent.

-

A block area will contain either more block areas or line areas, which are -special block areas. The line areas are created by the LineLayoutManager -in which the inline areas flow into.

-

So a block area manager handles the lines or blocks as its children and -determines things like spacing and breaks.

-

In the case of tables and lists the blocks are stacked in a specific way -that needs to be handled by the layout manager.

-
- -
- Side Floats - -

Side floats alter the length of the inline progression dimension for the -current line and following lines for the size of the float.

-

This means that the float needs to be handled by the block layout manager -so that it can adjust the available inline progression dimension for the -relevant line areas.

-
- -
- Footnotes and Before Floats - -

Footnotes and Before Floats are placed in special areas in the body region -of the page. The size of these areas is determined by the content. This in -turn effects the available size of the main reference area that contains -the flow.

-

A layout manager handles the adding and removing of footnotes/floats, this in turn effects the available space in the main reference area.

- -
- - -
-