]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Merged revisions 685918,687305 via svnmerge from
authorAdrian Cumiskey <acumiskey@apache.org>
Wed, 20 Aug 2008 13:00:43 +0000 (13:00 +0000)
committerAdrian Cumiskey <acumiskey@apache.org>
Wed, 20 Aug 2008 13:00:43 +0000 (13:00 +0000)
https://svn.eu.apache.org/repos/asf/xmlgraphics/fop/trunk

........
  r685918 | jeremias | 2008-08-14 15:32:28 +0100 (Thu, 14 Aug 2008) | 1 line

  Wasn't an NPE, but actually a division by zero.
........
  r687305 | acumiskey | 2008-08-20 13:59:11 +0100 (Wed, 20 Aug 2008) | 2 lines

  Moved mptToPt() and ptToMpt() from AbstractRenderer to UnitConv.  One less dependency to worry about.
........

git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/branches/Temp_AFPGOCAResources@687307 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/fop/render/AbstractPathOrientedRenderer.java
src/java/org/apache/fop/render/AbstractRenderer.java
src/java/org/apache/fop/render/pcl/PCLRenderer.java
src/java/org/apache/fop/render/txt/TXTRenderer.java
src/java/org/apache/fop/util/UnitConv.java
status.xml

index 7bd4709154a0147c4bcc53b57da5776ece4a71a0..f1ba119370e9c4e269224bbe070f7a088c9699a7 100644 (file)
@@ -48,6 +48,7 @@ import org.apache.fop.fo.Constants;
 import org.apache.fop.fo.extensions.ExtensionElementMapping;
 import org.apache.fop.fonts.FontMetrics;
 import org.apache.fop.traits.BorderProps;
+import org.apache.fop.util.UnitConv;
 
 /**
  * Abstract base class for renderers like PDF and PostScript where many painting operations
@@ -519,7 +520,7 @@ public abstract class AbstractPathOrientedRenderer extends PrintRenderer {
 
             saveGraphicsState();
             //Viewport position
-            concatenateTransformationMatrix(mptToPt(positionTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(positionTransform));
 
             //Background and borders
             float bpwidth = (borderPaddingStart + bv.getBorderAndPaddingWidthEnd()) / 1000f;
@@ -529,7 +530,7 @@ public abstract class AbstractPathOrientedRenderer extends PrintRenderer {
             //Shift to content rectangle after border painting
             AffineTransform contentRectTransform = new AffineTransform();
             contentRectTransform.translate(borderPaddingStart, borderPaddingBefore);
-            concatenateTransformationMatrix(mptToPt(contentRectTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(contentRectTransform));
 
             //Clipping
             if (bv.getClip()) {
@@ -539,7 +540,7 @@ public abstract class AbstractPathOrientedRenderer extends PrintRenderer {
             saveGraphicsState();
             //Set up coordinate system for content rectangle
             AffineTransform contentTransform = ctm.toAffineTransform();
-            concatenateTransformationMatrix(mptToPt(contentTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(contentTransform));
 
             currentIPPosition = 0;
             currentBPPosition = 0;
@@ -603,7 +604,7 @@ public abstract class AbstractPathOrientedRenderer extends PrintRenderer {
 
         if (!at.isIdentity()) {
             saveGraphicsState();
-            concatenateTransformationMatrix(mptToPt(at));
+            concatenateTransformationMatrix(UnitConv.mptToPt(at));
         }
 
         currentIPPosition = 0;
@@ -636,7 +637,7 @@ public abstract class AbstractPathOrientedRenderer extends PrintRenderer {
 
         if (!at.isIdentity()) {
             saveGraphicsState();
-            concatenateTransformationMatrix(mptToPt(at));
+            concatenateTransformationMatrix(UnitConv.mptToPt(at));
         }
 
         currentIPPosition = 0;
index e80775890e42a190a965f7d1c499a0851997b839..c29dbea15af58cdb27e1b3817435692ee8a7f623 100644 (file)
@@ -21,7 +21,6 @@ package org.apache.fop.render;
 
 // Java
 import java.awt.Rectangle;
-import java.awt.geom.AffineTransform;
 import java.awt.geom.Rectangle2D;
 import java.io.IOException;
 import java.io.OutputStream;
@@ -836,32 +835,4 @@ public abstract class AbstractRenderer
     public String getMimeType() {
         return null;
     }
-
-    /**
-     * Converts a millipoint-based transformation matrix to points.
-     * @param at a millipoint-based transformation matrix
-     * @return a point-based transformation matrix
-     */
-    protected AffineTransform mptToPt(AffineTransform at) {
-        double[] matrix = new double[6];
-        at.getMatrix(matrix);
-        //Convert to points
-        matrix[4] = matrix[4] / 1000;
-        matrix[5] = matrix[5] / 1000;
-        return new AffineTransform(matrix);
-    }
-
-    /**
-     * Converts a point-based transformation matrix to millipoints.
-     * @param at a point-based transformation matrix
-     * @return a millipoint-based transformation matrix
-     */
-    protected AffineTransform ptToMpt(AffineTransform at) {
-        double[] matrix = new double[6];
-        at.getMatrix(matrix);
-        //Convert to millipoints
-        matrix[4] = matrix[4] * 1000;
-        matrix[5] = matrix[5] * 1000;
-        return new AffineTransform(matrix);
-    }
 }
index ff7a13ee851442f34efa180823c8eb4b554fec25..4385ea1f2fe3143e51e258bdfe3d60983f02079a 100644 (file)
@@ -968,7 +968,7 @@ public class PCLRenderer extends PrintRenderer {
 
             saveGraphicsState();
             //Viewport position
-            concatenateTransformationMatrix(mptToPt(positionTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(positionTransform));
 
             //Background and borders
             float bpwidth = (borderPaddingStart + bv.getBorderAndPaddingWidthEnd()) / 1000f;
@@ -978,7 +978,7 @@ public class PCLRenderer extends PrintRenderer {
             //Shift to content rectangle after border painting
             AffineTransform contentRectTransform = new AffineTransform();
             contentRectTransform.translate(borderPaddingStart, borderPaddingBefore);
-            concatenateTransformationMatrix(mptToPt(contentRectTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(contentRectTransform));
 
             //Clipping
             if (bv.getClip()) {
@@ -988,7 +988,7 @@ public class PCLRenderer extends PrintRenderer {
             saveGraphicsState();
             //Set up coordinate system for content rectangle
             AffineTransform contentTransform = ctm.toAffineTransform();
-            concatenateTransformationMatrix(mptToPt(contentTransform));
+            concatenateTransformationMatrix(UnitConv.mptToPt(contentTransform));
 
             currentIPPosition = 0;
             currentBPPosition = 0;
@@ -1058,7 +1058,7 @@ public class PCLRenderer extends PrintRenderer {
 
         if (!at.isIdentity()) {
             saveGraphicsState();
-            concatenateTransformationMatrix(mptToPt(at));
+            concatenateTransformationMatrix(UnitConv.mptToPt(at));
         }
 
         currentIPPosition = 0;
@@ -1096,7 +1096,7 @@ public class PCLRenderer extends PrintRenderer {
 
         if (!at.isIdentity()) {
             saveGraphicsState();
-            concatenateTransformationMatrix(mptToPt(at));
+            concatenateTransformationMatrix(UnitConv.mptToPt(at));
         }
 
         currentIPPosition = 0;
@@ -1119,7 +1119,7 @@ public class PCLRenderer extends PrintRenderer {
      */
     protected void concatenateTransformationMatrix(AffineTransform at) {
         if (!at.isIdentity()) {
-            graphicContext.transform(ptToMpt(at));
+            graphicContext.transform(UnitConv.ptToMpt(at));
             changePrintDirection();
         }
     }
index 52c6912d486cace5b32d1299ee98aa1e2b6c14a2..29f1ef954909f595a0400933e0fdde69ef2532b6 100644 (file)
@@ -37,6 +37,7 @@ import org.apache.fop.area.inline.TextArea;
 import org.apache.fop.render.AbstractPathOrientedRenderer;
 import org.apache.fop.render.txt.border.AbstractBorderElement;
 import org.apache.fop.render.txt.border.BorderManager;
+import org.apache.fop.util.UnitConv;
 
 /**
  * Renderer that renders areas to plain text.
@@ -570,7 +571,7 @@ public class TXTRenderer extends AbstractPathOrientedRenderer {
 
     /** {@inheritDoc} */
     protected void concatenateTransformationMatrix(AffineTransform at) {
-        currentState.push(new CTM(ptToMpt(at)));
+        currentState.push(new CTM(UnitConv.ptToMpt(at)));
     }
 
 }
index 8bf7274eb8d994a2633b8b5f47abaabf0970bb46..475e3dcc0648ca759ca884196a4ccaf843366b04 100644 (file)
@@ -19,6 +19,8 @@
 
 package org.apache.fop.util;
 
+import java.awt.geom.AffineTransform;
+
 /**
  * Utility class for unit conversions.
  */
@@ -125,4 +127,32 @@ public final class UnitConv {
         return mpt2in(mpt) * resolution;
     }
 
+    /**
+     * Converts a millipoint-based transformation matrix to points.
+     * @param at a millipoint-based transformation matrix
+     * @return a point-based transformation matrix
+     */
+    public static AffineTransform mptToPt(AffineTransform at) {
+        double[] matrix = new double[6];
+        at.getMatrix(matrix);
+        //Convert to points
+        matrix[4] = matrix[4] / 1000;
+        matrix[5] = matrix[5] / 1000;
+        return new AffineTransform(matrix);
+    }
+
+    /**
+     * Converts a point-based transformation matrix to millipoints.
+     * @param at a point-based transformation matrix
+     * @return a millipoint-based transformation matrix
+     */
+    public static AffineTransform ptToMpt(AffineTransform at) {
+        double[] matrix = new double[6];
+        at.getMatrix(matrix);
+        //Convert to millipoints
+        matrix[4] = matrix[4] * 1000;
+        matrix[5] = matrix[5] * 1000;
+        return new AffineTransform(matrix);
+    }
+
 }
index c134fadc21649006b21e21a88fd434f3fe5030e1..1cde45913adfe2705c6978b275b839d9035fe917 100644 (file)
@@ -54,7 +54,7 @@
   <changes>
     <release version="FOP Trunk" date="TBD">
       <action context="Layout" dev="JM" type="fix">
-        Fixed the source for a NullPointerException when the content of an fo:leader with
+        Fixed the source for a division by zero when the content of an fo:leader with
         leader-pattern="use-content" collapses to zero width during layout.
       </action>
       <action context="Renderers" dev="JM" type="fix">