]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Flailing about with the requirements for Java 2D layout
authorPeter Bernard West <pbwest@apache.org>
Sun, 23 May 2004 10:43:24 +0000 (10:43 +0000)
committerPeter Bernard West <pbwest@apache.org>
Sun, 23 May 2004 10:43:24 +0000 (10:43 +0000)
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/FOP_0-20-0_Alt-Design@197617 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/fop/fo/FONode.java
src/java/org/apache/fop/fo/FOTree.java
src/java/org/apache/fop/fo/flow/FoPageSequence.java
src/java/org/apache/fop/fo/flow/FoPcdata.java

index d0aba6029ecd6c6139bb5da880bc09b2429ffe9f..70517d50cec0e989f1268394101c5a1a1049a135 100644 (file)
@@ -18,7 +18,6 @@
  */
 package org.apache.fop.fo;
 
-import java.awt.GraphicsEnvironment;
 import java.awt.geom.Rectangle2D;
 import java.util.BitSet;
 import java.util.HashMap;
@@ -191,10 +190,6 @@ public class FONode extends SyncedNode implements AreaListener {
     /** The number of markers on this FO. */
     protected int numMarkers = 0;
 
-    private GraphicsEnvironment gEnv = null;
-    protected GraphicsEnvironment getGraphicsEnvironment() {
-        return gEnv;
-    }
     /**
      * @param foTree an <tt>FOTree</tt> to which this node belongs
      * @param type the fo type of this FONode.
@@ -230,12 +225,6 @@ public class FONode extends SyncedNode implements AreaListener {
         exprParser = foTree.exprParser;
         propertySet = new PropertyValue[PropNames.LAST_PROPERTY_INDEX + 1];
         foAttributes = new FOAttributes(event, this);
-        if (parent == null) {
-            // Setup the graphics environment
-            gEnv = GraphicsEnvironment.getLocalGraphicsEnvironment();
-        } else {
-            gEnv = parent.getGraphicsEnvironment();
-        }
         if ((stateFlags & MC_MARKER) == 0) {
             processAttributes();
         }
index dc9671d20a10be1246e9323e08769e0d0fa1326c..058cab5dfbebd8833a0cedd6cac508be670f35a2 100644 (file)
@@ -18,6 +18,9 @@
  */
 package org.apache.fop.fo;
 
+import java.awt.Graphics2D;
+import java.awt.GraphicsEnvironment;
+import java.awt.font.FontRenderContext;
 import java.util.logging.Level;
 import java.util.logging.Logger;
 
@@ -92,17 +95,40 @@ public class FOTree extends Tree implements Runnable {
                 PropertyConsts.pconsts.getInitialValue(PropNames.FONT_SIZE);
         if ( ! (prop instanceof Numeric) || ! ((Numeric)prop).isLength())
             throw new PropertyException("Initial font-size is not a Length");
+        // Set up the rendering context
+    }
 
-
-        /*
-        for (int i = 1; i <= PropNames.LAST_PROPERTY_INDEX; i++) {
-            if (i == PropNames.FONT_SIZE) continue;
-            // Set up the initial values for each property
-            PropertyConsts.pconsts.getInitialValue(i);
-            //System.out.println("....Setting initial value for " + i);
-        }
-        */
-
+    /** The graphics environment in which FOP is operating */
+    private GraphicsEnvironment gEnv = null;
+    /**
+     * Gets the FOP <code>GraphicsEnvironment</code>
+     * @return the environment
+     */
+    protected GraphicsEnvironment getGraphicsEnvironment() {
+        return gEnv;
+    }
+    /** The object which controls drawing and text rendering in the page spread
+     */
+    private Graphics2D g2D = null;
+    /**
+     * Gets the <code>Graphics2D</code> rendering and drawing control object
+     * for area layout
+     * @return
+     */
+    public Graphics2D getGraphics2D() {
+        return g2D;
+    }
+    /** The <code>FontRenderContext</code> object garnered from the
+     * <code>Graphics2D</code> control object for area layout
+     */
+    private FontRenderContext frcontext = null;
+    /**
+     * Gets the <code>FontRenderContext</code> derived from the graphics
+     * control object
+     * @return
+     */
+    public FontRenderContext getFontRenderContext() {
+        return frcontext;
     }
 
     /**
index 6a5040377037ec2cd1aa4d631420b34a22b4186e..14d35f92d991a6d77332de662cd6b84505fe608f 100644 (file)
 
 package org.apache.fop.fo.flow;
 
-// FOP
-import java.awt.Graphics2D;
-import java.awt.GraphicsEnvironment;
-import java.awt.font.FontRenderContext;
 import java.awt.image.BufferedImage;
 import java.util.ArrayList;
 import java.util.Arrays;
@@ -186,6 +182,18 @@ public class FoPageSequence extends FONode {
         }
         return (Page)firstPage;
     }
+
+    /** An image on which to draw areas */
+    private BufferedImage pageSpread = null;
+    /**
+     * Gets the page spread image from which the <code>Graphics2D</code> and
+     * <code>FontRenderContext</code> have been derived.
+     * @return the page spread
+     */
+    public BufferedImage getPageSpread() {
+        return pageSpread;
+    }
+
     /**
      * @param foTree the FO tree being built
      * @param parent the parent FONode of this node
@@ -202,8 +210,6 @@ public class FoPageSequence extends FONode {
         // Set up the graphics environment
         pageSpread =
             new BufferedImage(20*72, 12*72, BufferedImage.TYPE_INT_RGB);
-        g2D = pageSpread.createGraphics();
-        frcontext = g2D.getFontRenderContext();
 
         XmlEvent ev;
         // Look for optional title
@@ -303,23 +309,6 @@ public class FoPageSequence extends FONode {
         makeSparsePropsSet();
     }
 
-    private GraphicsEnvironment gEnv = null;
-    public GraphicsEnvironment getGraphicsEnvironment() {
-        return gEnv;
-    }
-    private BufferedImage pageSpread = null;
-    public BufferedImage getPageSpread() {
-        return pageSpread;
-    }
-    private Graphics2D g2D = null;
-    public Graphics2D getGraphics2D() {
-        return g2D;
-    }
-    private FontRenderContext frcontext = null;
-    public FontRenderContext getFontRenderContext() {
-        return frcontext;
-    }
-
     public Area getReferenceRectangle() throws FOPException {
         // TODO Reference rectangle is assumed to be equivalent to the
         // "auto" value on "page-height" and "page-width".  The
index 1136a4a9c6bc158b4af0987bdb86b3c8957c2559..63041d8c844becc43e26107061c1ee5217d7fed2 100644 (file)
@@ -147,10 +147,12 @@ public class FoPcdata extends FOPageSeqNode {
     // parent block area.
     // Generate a text-layout for the PCDATA.
     /**
-     * Generate a  
+     * Generates a TextMeasurer from the PCDATA text.  The font and text
+     * attributes of the text are applied.
      */
     private void processText() {
-        
+        // Get the font
+        // 
     }
 
 }