]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Add <section> ids.
authorWilliam Victor Mote <vmote@apache.org>
Tue, 22 Apr 2003 02:48:54 +0000 (02:48 +0000)
committerWilliam Victor Mote <vmote@apache.org>
Tue, 22 Apr 2003 02:48:54 +0000 (02:48 +0000)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@196305 13f79535-47bb-0310-9956-ffa450edef68

src/documentation/content/xdocs/design/areas.xml

index 162659caceb4bdb5dc516511e218b530c8a4a875..01f77ba776c85d68e1a7b8a041ef94f1734a0a5c 100644 (file)
@@ -18,13 +18,13 @@ From that point forward, the area tree model can then handle the new page.
 The data in the area tree must be minimal and independant.
 This means that the data uses less memory and can be serialized to an output stream if needed.</p>
     <p>The Area Tree consists of a set of pages, which the actual implemenation places in a set of page sequences.</p>
-    <section>
+    <section id="structure">
       <title>Structure</title>
       <p>The area tree is a root element that has a list of page-viewport-areas.
 Each page viewport has a page-reference-area which holds the contents of the page.
 To handle the processing better FOP does not maintain a list at the root level but lets the area tree model handle each page as it is added.</p>
     </section>
-    <section>
+    <section id="page">
       <title>Page</title>
       <p>A page consists of a page+viewport pair.</p>
       <p>The PageViewPort and Page with the regions is created by the
@@ -43,7 +43,7 @@ The flow areas are then created inside these normal flow reference areas.</p>
 The layout manager then uses the page to add areas into the normal flow reference areas and floats and footnotes.
 After adding the areas for the body region then the other regions can be done layed out and added.</p>
     </section>
-    <section>
+    <section id="block">
       <title>Block Areas</title>
       <p>Block level areas contain either other blocks or line areas (which is a
 special block area).</p>
@@ -52,7 +52,7 @@ special block area).</p>
 The spacing between block areas is handled by an empty block area.
 A block area is stacked with other block areas in a particular direction, it has a size and it contains line areas made from a group of inline areas and/or block areas.</p>
     </section>
-    <section>
+    <section id="line-area">
       <title>Line Areas</title>
       <p>A line areas is simply a collection of inline areas that are stacked in the inline progression direction.
 A line area has a height and a start position.
@@ -60,7 +60,7 @@ The line area is rendered by handling each inline area.</p>
       <p>A line area gets a set of inline areas added until complete then it is justified and vertically alignedi when adding the areas.
 If the line area contains unresolved areas then there will be a line resolver that retains the justification information until all areas in the line are resolved.</p>
     </section>
-    <section>
+    <section id="inline">
       <title>Inline Areas</title>
       <p>There are a few different types of inline areas.
 All inline areas have a height and width.</p>
@@ -73,14 +73,14 @@ A special inline area Word is also used for a group of consecutive characters.</
 The leader (with use content) and unresolved page number areas are resolved to other inline areas.</p>
       <p>Once a LineArea is filled with inline areas then the inline areas need to be aligned and adjusted to fill the line properly.</p>
     </section>
-    <section>
+    <section id="repeated-area">
       <title>Repeated Areas</title>
       <p>There are cases where the same subtree could be repeated in the area tree.
 These areas will be returned by the same layout managers.
 So it is possible to put a flag on the created areas so that the subtree data can be cached in the output.
 Examples of this are: static areas, table header/footer, svg.</p>
     </section>
-    <section>
+    <section id="traits">
       <title>Traits</title>
       <p>A trait is information associated with an area.
 This could be information such as text colour or is-first.</p>
@@ -94,15 +94,15 @@ Since setting the same value on every area would use a lot of memory then the tr
 every line area with the same dominant value can derive it.
 The text inline areas then get the font colour set on the inline area or from the line area or from the block area.</p>
     </section>
-    <section>
+    <section id="classes">
       <title>Classes</title>
       <p>The following class structure will be used to represent the area tree.</p>
-      <section>
+      <section id="classes-page">
         <title>Page Area Classes</title>
         <p>The page area classes hold the top level layout of a page.
 The areas are created by the page master and should be ready to have flow areas added.</p>
       </section>
-      <section>
+      <section id="classes-block">
         <title>Block Area Classes</title>
         <p>The block areas hold other block areas and/or line areas.
 The child areas are stacked in a particular direction.</p>
@@ -110,7 +110,7 @@ The child areas are stacked in a particular direction.</p>
 These areas a placed with an absolute positioning.
 The absolute positioning is where the blocks are placed with an offset from the parent reference area.</p>
       </section>
-      <section>
+      <section id="classes-inline">
         <title>Inline Area Classes</title>
         <p>The inline areas are used to make up a line area.
 An inline area typically has a height, width and some content.
@@ -118,7 +118,7 @@ The inline area is offset from the baseline of the current line area.
 The content of the inline area can be other inline areas or a simple atomic object.</p>
       </section>
     </section>
-    <section>
+    <section id="forward-references">
       <title>Forward References</title>
       <p>The Area Tree maintains a set of mappings from the reference to pages.</p>
       <p>The PageViewPort holds the list of forward references that need resolving so that if a references is resolved during layout the page can be easily found and then fixed.
@@ -126,7 +126,7 @@ Once all the forward references are resolved then the page is ready to be render
       <p>To layout a page any areas that cannot be resolved need to reserve space.
 Once the inline area is resolved then the complete line should be adjusted to accomodate any change in space used by the area.</p>
     </section>
-    <section>
+    <section id="caching">
       <title>Caching</title>
       <p>We may need to cache pages due to forward references or when keeping all
 pages.</p>
@@ -136,7 +136,7 @@ The Page is serialized to an object stream and then all of the page contents are
 The Page is then recoved by reading from the object stream.</p>
       <p>The PageViewport retains information about id areas for easy access.</p>
     </section>
-    <section>
+    <section id="extensions">
       <title>Extensions</title>
       <p>The Area Tree holds the Output Document extensions.
 This is information such as pdf bookmarks or other output document specific information that
@@ -144,7 +144,7 @@ is not handled by XSL:FO.</p>
       <p>It is also possible to create custom areas that extend a normal area.
 The actual data that is rendered could be set in a different way or depend on resolving a forward reference.</p>
     </section>
-    <section>
+    <section id="handlers">
       <title>Area Tree Handlers</title>
       <p>To handle different situations the handler for the Area Tree handles each
 page as it is added.</p>