]> source.dussan.org Git - xmlgraphics-fop.git/commitdiff
Bugzilla #49695: Replaced magic numbers with constants from UnitConv and GraphicsCons...
authorVincent Hennebert <vhennebert@apache.org>
Tue, 23 Nov 2010 19:23:59 +0000 (19:23 +0000)
committerVincent Hennebert <vhennebert@apache.org>
Tue, 23 Nov 2010 19:23:59 +0000 (19:23 +0000)
Patch submitted by Joshua Marquart (joshua dot marquart _at. firstdata .dot_ com), applied with some modifications

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

12 files changed:
src/java/org/apache/fop/apps/FOUserAgent.java
src/java/org/apache/fop/apps/FopFactory.java
src/java/org/apache/fop/apps/FopFactoryConfigurator.java
src/java/org/apache/fop/image/loader/batik/ImageConverterSVG2G2D.java
src/java/org/apache/fop/render/awt/AWTRenderer.java
src/java/org/apache/fop/render/java2d/Java2DImageHandlerRenderedImage.java
src/java/org/apache/fop/render/java2d/Java2DRenderer.java
src/java/org/apache/fop/render/rtf/FoUnitsConverter.java
src/java/org/apache/fop/svg/AbstractFOPTranscoder.java
src/java/org/apache/fop/svg/PDFDocumentGraphics2D.java
src/java/org/apache/fop/svg/PDFGraphics2D.java
status.xml

index 0a65203cc29b8fc8ae6a0fcb307b6745961b2efe..071066e0437312e50779dba17d5f5c74441669fe 100644 (file)
@@ -35,6 +35,7 @@ import org.apache.commons.logging.LogFactory;
 import org.apache.xmlgraphics.image.loader.ImageContext;
 import org.apache.xmlgraphics.image.loader.ImageSessionContext;
 import org.apache.xmlgraphics.image.loader.impl.AbstractImageSessionContext;
+import org.apache.xmlgraphics.util.UnitConv;
 
 import org.apache.fop.Version;
 import org.apache.fop.accessibility.Accessibility;
@@ -450,7 +451,7 @@ public class FOUserAgent {
      * @see #getTargetResolution()
      */
     public float getTargetPixelUnitToMillimeter() {
-        return 25.4f / this.targetResolution;
+        return UnitConv.IN2MM / this.targetResolution;
     }
 
     /** @return the resolution for resolution-dependant output */
index 7bcdd27035a8336f3307094f9e1a1dff5702fb9c..b86c52cf694b963b950336d9b26ed1f7c58c9f89 100644 (file)
@@ -42,6 +42,7 @@ import org.apache.commons.logging.LogFactory;
 
 import org.apache.xmlgraphics.image.loader.ImageContext;
 import org.apache.xmlgraphics.image.loader.ImageManager;
+import org.apache.xmlgraphics.util.UnitConv;
 
 import org.apache.fop.fo.ElementMapping;
 import org.apache.fop.fo.ElementMappingRegistry;
@@ -539,7 +540,7 @@ public class FopFactory implements ImageContext {
      * @see #getSourceResolution()
      */
     public float getSourcePixelUnitToMillimeter() {
-        return 25.4f / getSourceResolution();
+        return UnitConv.IN2MM / getSourceResolution();
     }
 
     /**
@@ -567,7 +568,7 @@ public class FopFactory implements ImageContext {
      * @see #getTargetResolution()
      */
     public float getTargetPixelUnitToMillimeter() {
-        return 25.4f / this.targetResolution;
+        return UnitConv.IN2MM / this.targetResolution;
     }
 
     /**
index ad0869ea18fa2b47174c160a527270b80dbab58f..161bd4a8fdcf3fe9f4ddc94cc3b34ac7c556b0d8 100644 (file)
@@ -33,6 +33,7 @@ import org.apache.avalon.framework.configuration.DefaultConfigurationBuilder;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
 import org.apache.xmlgraphics.image.loader.spi.ImageImplRegistry;
 import org.apache.xmlgraphics.image.loader.util.Penalty;
 
@@ -61,10 +62,10 @@ public class FopFactoryConfigurator {
     public static final String DEFAULT_PAGE_HEIGHT = "11in";
 
     /** Defines the default source resolution (72dpi) for FOP */
-    public static final float DEFAULT_SOURCE_RESOLUTION = 72.0f; //dpi
+    public static final float DEFAULT_SOURCE_RESOLUTION = GraphicsConstants.DEFAULT_DPI; //dpi
 
     /** Defines the default target resolution (72dpi) for FOP */
-    public static final float DEFAULT_TARGET_RESOLUTION = 72.0f; //dpi
+    public static final float DEFAULT_TARGET_RESOLUTION = GraphicsConstants.DEFAULT_DPI; //dpi
 
     private static final String PREFER_RENDERER = "prefer-renderer";
 
@@ -159,7 +160,7 @@ public class FopFactoryConfigurator {
 
                 lang = hyphPatConfig[i].getAttribute("lang", null);
                 if (lang == null) {
-                    addError("The lang attribute of a hyphenation-pattern configuration" 
+                    addError("The lang attribute of a hyphenation-pattern configuration"
                              + " element must exist (" + location + ")", error);
                 } else if (!lang.matches("[a-zA-Z]{2}")) {
                     addError("The lang attribute of a hyphenation-pattern configuration"
@@ -191,7 +192,7 @@ public class FopFactoryConfigurator {
                     LogUtil.handleError(log, error.toString(), strict);
                     continue;
                 }
-                
+
                 String llccKey = HyphenationTreeCache.constructLlccKey(lang, country);
                 hyphPatNames.put(llccKey, filename);
                 if (log.isDebugEnabled()) {
@@ -270,7 +271,7 @@ public class FopFactoryConfigurator {
         }
         error.append(message);
     }
-    
+
     private void configureImageLoading(Configuration parent, boolean strict) throws FOPException {
         if (parent == null) {
             return;
index 9efc2aaf098f5717252b74010415de6a2fb70f27..0b7989fb21d3c0c9b72b861f972a2858b70bfe08 100644 (file)
@@ -33,6 +33,7 @@ import org.apache.batik.gvt.GraphicsNode;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
 import org.apache.xmlgraphics.image.loader.Image;
 import org.apache.xmlgraphics.image.loader.ImageException;
 import org.apache.xmlgraphics.image.loader.ImageFlavor;
@@ -72,7 +73,7 @@ public class ImageConverterSVG2G2D extends AbstractImageConverter {
         }
 
         //Prepare
-        float pxToMillimeter = UnitConv.IN2MM / 72; //default: 72dpi
+        float pxToMillimeter = UnitConv.IN2MM / GraphicsConstants.DEFAULT_DPI;
         Number ptm = (Number)hints.get(ImageProcessingHints.SOURCE_RESOLUTION);
         if (ptm != null) {
             pxToMillimeter = (float)(UnitConv.IN2MM / ptm.doubleValue());
index 0128cf90ef89c159f660963b814842412c235ccf..99dece24a271d71cb5e71410551e6544679bffa1 100644 (file)
@@ -29,14 +29,16 @@ package org.apache.fop.render.awt;
 // Java
 import java.awt.Color;
 import java.awt.Dimension;
-import java.awt.geom.Rectangle2D;
 import java.awt.geom.Point2D;
+import java.awt.geom.Rectangle2D;
 import java.awt.print.PageFormat;
 import java.awt.print.Pageable;
 import java.awt.print.Paper;
 import java.awt.print.Printable;
 import java.io.IOException;
 
+import org.apache.xmlgraphics.util.UnitConv;
+
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.apps.FOUserAgent;
 import org.apache.fop.apps.FopFactoryConfigurator;
@@ -46,8 +48,8 @@ import org.apache.fop.area.PageViewport;
 import org.apache.fop.render.awt.viewer.PreviewDialog;
 import org.apache.fop.render.awt.viewer.Renderable;
 import org.apache.fop.render.awt.viewer.StatusListener;
-import org.apache.fop.render.java2d.Java2DRenderer;
 import org.apache.fop.render.extensions.prepress.PageScale;
+import org.apache.fop.render.java2d.Java2DRenderer;
 
 /**
  * The AWTRender outputs the pages generated by the layout engine to a Swing
@@ -152,10 +154,10 @@ public class AWTRenderer extends Java2DRenderer implements Pageable {
         pageWidth = (int) Math.round(bounds.getWidth() / 1000f);
         pageHeight = (int) Math.round(bounds.getHeight() / 1000f);
         double scaleX = scaleFactor
-                * (25.4 / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
+                * (UnitConv.IN2MM / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
                 / userAgent.getTargetPixelUnitToMillimeter();
         double scaleY = scaleFactor
-                * (25.4 / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
+                * (UnitConv.IN2MM / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
                 / userAgent.getTargetPixelUnitToMillimeter();
         if (getPageViewport(pageNum).getForeignAttributes() != null) {
             String scale = (String) getPageViewport(pageNum).getForeignAttributes().get(
index c2968411837ac136aaaa3387c1e12b0bd5addb9d..4bdd52162fed59cc5ce56af138d20c4a0380f83c 100644 (file)
@@ -27,6 +27,7 @@ import java.awt.image.RenderedImage;
 import java.awt.image.WritableRaster;
 import java.io.IOException;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
 import org.apache.xmlgraphics.image.loader.Image;
 import org.apache.xmlgraphics.image.loader.ImageFlavor;
 import org.apache.xmlgraphics.image.loader.ImageInfo;
@@ -76,7 +77,7 @@ public class Java2DImageHandlerRenderedImage implements ImageHandler {
         //scaling because of image resolution
         //float sourceResolution = java2dContext.getUserAgent().getSourceResolution();
         //source resolution seems to be a bad idea, not sure why
-        float sourceResolution = 72;
+        float sourceResolution = GraphicsConstants.DEFAULT_DPI;
         sourceResolution *= 1000; //we're working in the millipoint area
         sx *= sourceResolution / info.getSize().getDpiHorizontal();
         sy *= sourceResolution / info.getSize().getDpiVertical();
index 73af5c8be8b20e9fb0888b77f8842ba661b81061..353aefa259dd2df51095acbc2c2479ef81808b3f 100644 (file)
@@ -53,6 +53,7 @@ import org.apache.xmlgraphics.image.loader.impl.ImageGraphics2D;
 import org.apache.xmlgraphics.image.loader.impl.ImageRendered;
 import org.apache.xmlgraphics.image.loader.impl.ImageXMLDOM;
 import org.apache.xmlgraphics.image.loader.util.ImageUtil;
+import org.apache.xmlgraphics.util.UnitConv;
 
 import org.apache.fop.ResourceEventProducer;
 import org.apache.fop.apps.FOPException;
@@ -317,10 +318,10 @@ public abstract class Java2DRenderer extends AbstractPathOrientedRenderer implem
             }
 
             scaleX = scaleX
-                * (25.4f / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
+                * (UnitConv.IN2MM / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
                 / userAgent.getTargetPixelUnitToMillimeter();
             scaleY = scaleY
-                * (25.4f / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
+                * (UnitConv.IN2MM / FopFactoryConfigurator.DEFAULT_TARGET_RESOLUTION)
                 / userAgent.getTargetPixelUnitToMillimeter();
             int bitmapWidth = (int) ((pageWidth * scaleX) + 0.5);
             int bitmapHeight = (int) ((pageHeight * scaleY) + 0.5);
index 33a2ff90472ccb6df4df788c9f97ffa7d46e7df0..8540fcde3e5b6b2dccd7a5018c22b0ed4f3c7f20 100644 (file)
@@ -24,6 +24,7 @@ import java.util.Map;
 
 import org.apache.fop.apps.FOPException;
 import org.apache.fop.fo.properties.FixedLength;
+import org.apache.xmlgraphics.util.UnitConv;
 
 
 /**  Converts XSL-FO units to RTF units
@@ -43,8 +44,8 @@ final class FoUnitsConverter {
     public static final float POINT_TO_TWIPS = 20f;
 
     /** millimeters and centimeters to twips: , one point is 1/72 of an inch, one inch is 25.4 mm */
-    public static final float IN_TO_TWIPS = 72f * POINT_TO_TWIPS;
-    public static final float MM_TO_TWIPS = IN_TO_TWIPS / 25.4f;
+    public static final float IN_TO_TWIPS = UnitConv.IN2PT * POINT_TO_TWIPS;
+    public static final float MM_TO_TWIPS = IN_TO_TWIPS / UnitConv.IN2MM;
     public static final float CM_TO_TWIPS = 10 * MM_TO_TWIPS;
 
 
index aa8c5238c9df33399fcc34fe3071aa76e52f7055..01ef22efa73f24a0e1a63875c4ff7fbc908e7536 100644 (file)
@@ -26,7 +26,6 @@ import javax.xml.transform.Source;
 import javax.xml.transform.stream.StreamSource;
 
 import org.w3c.dom.DOMImplementation;
-
 import org.xml.sax.EntityResolver;
 
 import org.apache.avalon.framework.configuration.Configurable;
@@ -48,10 +47,12 @@ import org.apache.batik.util.SVGConstants;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.impl.SimpleLog;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
 import org.apache.xmlgraphics.image.loader.ImageContext;
 import org.apache.xmlgraphics.image.loader.ImageManager;
 import org.apache.xmlgraphics.image.loader.ImageSessionContext;
 import org.apache.xmlgraphics.image.loader.impl.AbstractImageSessionContext;
+import org.apache.xmlgraphics.util.UnitConv;
 
 /**
  * This is the common base class of all of FOP's transcoders.
@@ -226,7 +227,7 @@ public abstract class AbstractFOPTranscoder extends SVGAbstractTranscoder implem
         if (hints.containsKey(KEY_DEVICE_RESOLUTION)) {
             return ((Float)hints.get(KEY_DEVICE_RESOLUTION)).floatValue();
         } else {
-            return 72;
+            return GraphicsConstants.DEFAULT_DPI;
         }
     }
 
@@ -253,7 +254,7 @@ public abstract class AbstractFOPTranscoder extends SVGAbstractTranscoder implem
     protected void setupImageInfrastructure(final String baseURI) {
         final ImageContext imageContext = new ImageContext() {
             public float getSourceResolution() {
-                return 25.4f / userAgent.getPixelUnitToMillimeter();
+                return UnitConv.IN2MM / userAgent.getPixelUnitToMillimeter();
             }
         };
         this.imageManager = new ImageManager(imageContext);
@@ -372,7 +373,7 @@ public abstract class AbstractFOPTranscoder extends SVGAbstractTranscoder implem
                 return ((Float)getTranscodingHints().get(key)).floatValue();
             } else {
                 // return 0.3528f; // 72 dpi
-                return 25.4f / 96; //96dpi = 0.2645833333333333333f;
+                return UnitConv.IN2MM / 96; //96dpi = 0.2645833333333333333f;
             }
         }
 
index 409b8dd9ffea250cd684b944272ae1c9443935ad..db1d9e2deda2ab181995dba1ddb13259e9bf36d3 100644 (file)
@@ -30,6 +30,8 @@ import java.io.IOException;
 import java.io.OutputStream;
 import java.io.StringWriter;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
+
 import org.apache.fop.Version;
 import org.apache.fop.fonts.FontInfo;
 import org.apache.fop.fonts.FontSetup;
@@ -64,7 +66,7 @@ public class PDFDocumentGraphics2D extends PDFGraphics2D {
     /** Normal PDF resolution (72dpi) */
     public static final int NORMAL_PDF_RESOLUTION = 72;
     /** Default device resolution (300dpi is a resonable quality for most purposes) */
-    public static final int DEFAULT_NATIVE_DPI = 300;
+    public static final int DEFAULT_NATIVE_DPI = GraphicsConstants.DEFAULT_SAMPLE_DPI;
 
     /**
      * The device resolution may be different from the normal target resolution. See
index 45189133ab207ae9d0f65a938988120105ed9651..7c8d4a6b91ef84843a1ee30ea0365173f128ad63 100644 (file)
@@ -60,6 +60,7 @@ import org.apache.batik.ext.awt.RenderingHintsKeyExt;
 import org.apache.batik.gvt.GraphicsNode;
 import org.apache.batik.gvt.PatternPaint;
 
+import org.apache.xmlgraphics.image.GraphicsConstants;
 import org.apache.xmlgraphics.image.loader.ImageInfo;
 import org.apache.xmlgraphics.image.loader.ImageSize;
 import org.apache.xmlgraphics.image.loader.impl.ImageRawCCITTFax;
@@ -1270,7 +1271,8 @@ public class PDFGraphics2D extends AbstractGraphics2D implements NativeImageHand
 
     private PDFXObject addRenderedImage(String key, RenderedImage img) {
         ImageInfo info = new ImageInfo(null, "image/unknown");
-        ImageSize size = new ImageSize(img.getWidth(), img.getHeight(), 72);
+        ImageSize size = new ImageSize(img.getWidth(), img.getHeight(),
+                GraphicsConstants.DEFAULT_DPI);
         info.setSize(size);
         ImageRendered imgRend = new ImageRendered(info, img, null);
         ImageRenderedAdapter adapter = new ImageRenderedAdapter(imgRend, key);
index b651ddf89c475682fed5eb0fa0c4e577e071192c..69aff49214eb4b7faa1e2ecbedd7898692876af9 100644 (file)
@@ -58,6 +58,9 @@
       documents. Example: the fix of marks layering will be such a case when it's done.
     -->
     <release version="FOP Trunk" date="TBD">
+      <action context="Code" dev="VH" type="fix" fixes-bug="49695" due-to="Joshua Marquart">
+        Replaced magic numbers with constants from UnitConv and GraphicsConstants.
+      </action>
       <action context="Renderers" dev="JM" type="add" fixes-bug="42600" due-to="Maximilian Aster">
         Added some support for break-before/-after for RTF output.
       </action>