You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-commits@xmlgraphics.apache.org by ac...@apache.org on 2008/08/14 15:26:02 UTC

svn commit: r685885 - in /xmlgraphics/fop/trunk/src/java/org/apache/fop: render/PrintRenderer.java render/afp/AFPRenderer.java render/java2d/Java2DRenderer.java render/pdf/PDFRenderer.java render/ps/PSRenderer.java util/ColorUtil.java

Author: acumiskey
Date: Thu Aug 14 06:25:54 2008
New Revision: 685885

URL: http://svn.apache.org/viewvc?rev=685885&view=rev
Log:
Moved static method lightenColor() from PrintRenderer to ColorUtil.  Thats one less Renderer interface dependency to worry about :).

Modified:
    xmlgraphics/fop/trunk/src/java/org/apache/fop/render/PrintRenderer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPRenderer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/render/java2d/Java2DRenderer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/render/pdf/PDFRenderer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/render/ps/PSRenderer.java
    xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorUtil.java

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/render/PrintRenderer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/PrintRenderer.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/render/PrintRenderer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/render/PrintRenderer.java Thu Aug 14 06:25:54 2008
@@ -20,7 +20,6 @@
 package org.apache.fop.render;
 
 // FOP
-import java.awt.Color;
 import java.awt.geom.Rectangle2D;
 import java.util.List;
 import java.util.Map;
@@ -113,29 +112,6 @@
     }
 
     /**
-     * Lightens up a color for groove, ridge, inset and outset border effects.
-     * @param col the color to lighten up
-     * @param factor factor by which to lighten up (negative values darken the color)
-     * @return the modified color
-     */
-    public static Color lightenColor(Color col, float factor) {
-        // TODO: This function converts the color into the sRGB namespace.
-        // This should be avoided if possible.
-        float[] cols = new float[4];
-        cols = col.getRGBComponents(cols);
-        if (factor > 0) {
-            cols[0] += (1.0 - cols[0]) * factor;
-            cols[1] += (1.0 - cols[1]) * factor;
-            cols[2] += (1.0 - cols[2]) * factor;
-        } else {
-            cols[0] -= cols[0] * -factor;
-            cols[1] -= cols[1] * -factor;
-            cols[2] -= cols[2] * -factor;
-        }
-        return new Color(cols[0], cols[1], cols[2], cols[3]);
-    }
-
-    /**
      * Creates a RendererContext for an image.
      * @param x the x coordinate (in millipoints)
      * @param y the y coordinate (in millipoints)

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPRenderer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPRenderer.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPRenderer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/render/afp/AFPRenderer.java Thu Aug 14 06:25:54 2008
@@ -88,6 +88,7 @@
 import org.apache.fop.render.afp.modca.AFPDataStream;
 import org.apache.fop.render.afp.modca.ImageObject;
 import org.apache.fop.render.afp.modca.PageObject;
+import org.apache.fop.util.ColorUtil;
 
 /**
  * This is an implementation of a FOP Renderer that renders areas to AFP.
@@ -850,8 +851,8 @@
             {
                 float colFactor = (style == EN_GROOVE ? 0.4f : -0.4f);
                 if (horz) {
-                    Color uppercol = lightenColor(col, -colFactor);
-                    Color lowercol = lightenColor(col, colFactor);
+                    Color uppercol = ColorUtil.lightenColor(col, -colFactor);
+                    Color lowercol = ColorUtil.lightenColor(col, colFactor);
                     float h3 = h / 3;
                     float ym1 = y1;
                     afpDataStream.createLine(
@@ -879,8 +880,8 @@
                         lowercol
                     );
                 } else {
-                    Color leftcol = lightenColor(col, -colFactor);
-                    Color rightcol = lightenColor(col, colFactor);
+                    Color leftcol = ColorUtil.lightenColor(col, -colFactor);
+                    Color rightcol = ColorUtil.lightenColor(col, colFactor);
                     float w3 = w / 3;
                     float xm1 = x1 + (w3 / 2);
                     afpDataStream.createLine(

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/render/java2d/Java2DRenderer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/java2d/Java2DRenderer.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/render/java2d/Java2DRenderer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/render/java2d/Java2DRenderer.java Thu Aug 14 06:25:54 2008
@@ -77,6 +77,7 @@
 import org.apache.fop.render.RendererContext;
 import org.apache.fop.render.pdf.CTMHelper;
 import org.apache.fop.util.CharUtilities;
+import org.apache.fop.util.ColorUtil;
 
 /**
  * The <code>Java2DRenderer</code> class provides the abstract technical
@@ -652,8 +653,8 @@
             case Constants.EN_RIDGE:
                 float colFactor = (style == EN_GROOVE ? 0.4f : -0.4f);
                 if (horz) {
-                    Color uppercol = lightenColor(col, -colFactor);
-                    Color lowercol = lightenColor(col, colFactor);
+                    Color uppercol = ColorUtil.lightenColor(col, -colFactor);
+                    Color lowercol = ColorUtil.lightenColor(col, colFactor);
                     float h3 = h / 3;
                     float ym1 = y1 + (h3 / 2);
                     g2d.setStroke(new BasicStroke(h3));
@@ -664,8 +665,8 @@
                     g2d.setColor(lowercol);
                     g2d.draw(new Line2D.Float(x1, ym1 + h3 + h3, x2, ym1 + h3 + h3));
                 } else {
-                    Color leftcol = lightenColor(col, -colFactor);
-                    Color rightcol = lightenColor(col, colFactor);
+                    Color leftcol = ColorUtil.lightenColor(col, -colFactor);
+                    Color rightcol = ColorUtil.lightenColor(col, colFactor);
                     float w3 = w / 3;
                     float xm1 = x1 + (w3 / 2);
                     g2d.setStroke(new BasicStroke(w3));
@@ -681,13 +682,13 @@
             case Constants.EN_OUTSET:
                 colFactor = (style == EN_OUTSET ? 0.4f : -0.4f);
                 if (horz) {
-                    col = lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
+                    col = ColorUtil.lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
                     g2d.setStroke(new BasicStroke(h));
                     float ym1 = y1 + (h / 2);
                     g2d.setColor(col);
                     g2d.draw(new Line2D.Float(x1, ym1, x2, ym1));
                 } else {
-                    col = lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
+                    col = ColorUtil.lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
                     float xm1 = x1 + (w / 2);
                     g2d.setStroke(new BasicStroke(w));
                     g2d.setColor(col);
@@ -859,7 +860,7 @@
         case EN_RIDGE:
             float half = area.getRuleThickness() / 2000f;
 
-            state.updateColor(lightenColor(col, 0.6f));
+            state.updateColor(ColorUtil.lightenColor(col, 0.6f));
             moveTo(startx, starty);
             lineTo(endx, starty);
             lineTo(endx, starty + 2 * half);

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/render/pdf/PDFRenderer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/pdf/PDFRenderer.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/render/pdf/PDFRenderer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/render/pdf/PDFRenderer.java Thu Aug 14 06:25:54 2008
@@ -116,6 +116,7 @@
 import org.apache.fop.render.RendererContext;
 import org.apache.fop.util.CharUtilities;
 import org.apache.fop.util.ColorProfileUtil;
+import org.apache.fop.util.ColorUtil;
 
 /**
  * Renderer that renders areas to PDF.
@@ -938,8 +939,8 @@
                 float colFactor = (style == EN_GROOVE ? 0.4f : -0.4f);
                 currentStream.add("[] 0 d ");
                 if (horz) {
-                    Color uppercol = lightenColor(col, -colFactor);
-                    Color lowercol = lightenColor(col, colFactor);
+                    Color uppercol = ColorUtil.lightenColor(col, -colFactor);
+                    Color lowercol = ColorUtil.lightenColor(col, colFactor);
                     float h3 = h / 3;
                     currentStream.add(format(h3) + " w\n");
                     float ym1 = y1 + (h3 / 2);
@@ -953,8 +954,8 @@
                     currentStream.add(format(x1) + " " + format(ym1 + h3 + h3) + " m "
                                         + format(x2) + " " + format(ym1 + h3 + h3) + " l S\n");
                 } else {
-                    Color leftcol = lightenColor(col, -colFactor);
-                    Color rightcol = lightenColor(col, colFactor);
+                    Color leftcol = ColorUtil.lightenColor(col, -colFactor);
+                    Color rightcol = ColorUtil.lightenColor(col, colFactor);
                     float w3 = w / 3;
                     currentStream.add(format(w3) + " w\n");
                     float xm1 = x1 + (w3 / 2);
@@ -977,14 +978,14 @@
                 currentStream.add("[] 0 d ");
                 Color c = col;
                 if (horz) {
-                    c = lightenColor(c, (startOrBefore ? 1 : -1) * colFactor);
+                    c = ColorUtil.lightenColor(c, (startOrBefore ? 1 : -1) * colFactor);
                     currentStream.add(format(h) + " w\n");
                     float ym1 = y1 + (h / 2);
                     setColor(c, false, null);
                     currentStream.add(format(x1) + " " + format(ym1) + " m "
                             + format(x2) + " " + format(ym1) + " l S\n");
                 } else {
-                    c = lightenColor(c, (startOrBefore ? 1 : -1) * colFactor);
+                    c = ColorUtil.lightenColor(c, (startOrBefore ? 1 : -1) * colFactor);
                     currentStream.add(format(w) + " w\n");
                     float xm1 = x1 + (w / 2);
                     setColor(c, false, null);
@@ -1771,7 +1772,7 @@
             case EN_RIDGE:
                 float half = area.getRuleThickness() / 2000f;
 
-                setColor(lightenColor(col, 0.6f), true, null);
+                setColor(ColorUtil.lightenColor(col, 0.6f), true, null);
                 currentStream.add(format(startx) + " " + format(starty) + " m\n");
                 currentStream.add(format(endx) + " " + format(starty) + " l\n");
                 currentStream.add(format(endx) + " " + format(starty + 2 * half) + " l\n");

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/render/ps/PSRenderer.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/render/ps/PSRenderer.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/render/ps/PSRenderer.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/render/ps/PSRenderer.java Thu Aug 14 06:25:54 2008
@@ -106,6 +106,7 @@
 import org.apache.fop.render.ps.extensions.PSSetPageDevice;
 import org.apache.fop.render.ps.extensions.PSSetupCode;
 import org.apache.fop.util.CharUtilities;
+import org.apache.fop.util.ColorUtil;
 
 /**
  * Renderer that renders to PostScript.
@@ -839,8 +840,8 @@
                     float colFactor = (style == EN_GROOVE ? 0.4f : -0.4f);
                     gen.useDash(null);
                     if (horz) {
-                        Color uppercol = lightenColor(col, -colFactor);
-                        Color lowercol = lightenColor(col, colFactor);
+                        Color uppercol = ColorUtil.lightenColor(col, -colFactor);
+                        Color lowercol = ColorUtil.lightenColor(col, colFactor);
                         float h3 = h / 3;
                         gen.useLineWidth(h3);
                         float ym1 = y1 + (h3 / 2);
@@ -851,8 +852,8 @@
                         gen.useColor(lowercol);
                         drawLine(x1, ym1 + h3 + h3, x2, ym1 + h3 + h3);
                     } else {
-                        Color leftcol = lightenColor(col, -colFactor);
-                        Color rightcol = lightenColor(col, colFactor);
+                        Color leftcol = ColorUtil.lightenColor(col, -colFactor);
+                        Color rightcol = ColorUtil.lightenColor(col, colFactor);
                         float w3 = w / 3;
                         gen.useLineWidth(w3);
                         float xm1 = x1 + (w3 / 2);
@@ -869,13 +870,13 @@
                     colFactor = (style == EN_OUTSET ? 0.4f : -0.4f);
                     gen.useDash(null);
                     if (horz) {
-                        Color c = lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
+                        Color c = ColorUtil.lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
                         gen.useLineWidth(h);
                         float ym1 = y1 + (h / 2);
                         gen.useColor(c);
                         drawLine(x1, ym1, x2, ym1);
                     } else {
-                        Color c = lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
+                        Color c = ColorUtil.lightenColor(col, (startOrBefore ? 1 : -1) * colFactor);
                         gen.useLineWidth(w);
                         float xm1 = x1 + (w / 2);
                         gen.useColor(c);
@@ -1570,7 +1571,7 @@
                 case EN_RIDGE:
                     float half = area.getRuleThickness() / 2000f;
 
-                    gen.useColor(lightenColor(col, 0.6f));
+                    gen.useColor(ColorUtil.lightenColor(col, 0.6f));
                     moveTo(startx, starty);
                     lineTo(endx, starty);
                     lineTo(endx, starty + 2 * half);

Modified: xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorUtil.java
URL: http://svn.apache.org/viewvc/xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorUtil.java?rev=685885&r1=685884&r2=685885&view=diff
==============================================================================
--- xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorUtil.java (original)
+++ xmlgraphics/fop/trunk/src/java/org/apache/fop/util/ColorUtil.java Thu Aug 14 06:25:54 2008
@@ -658,4 +658,27 @@
         colorMap.put("transparent", new Color(0, 0, 0, 0));
     }
 
+    /**
+     * Lightens up a color for groove, ridge, inset and outset border effects.
+     * @param col the color to lighten up
+     * @param factor factor by which to lighten up (negative values darken the color)
+     * @return the modified color
+     */
+    public static Color lightenColor(Color col, float factor) {
+        // TODO: This function converts the color into the sRGB namespace.
+        // This should be avoided if possible.
+        float[] cols = new float[4];
+        cols = col.getRGBComponents(cols);
+        if (factor > 0) {
+            cols[0] += (1.0 - cols[0]) * factor;
+            cols[1] += (1.0 - cols[1]) * factor;
+            cols[2] += (1.0 - cols[2]) * factor;
+        } else {
+            cols[0] -= cols[0] * -factor;
+            cols[1] -= cols[1] * -factor;
+            cols[2] -= cols[2] * -factor;
+        }
+        return new Color(cols[0], cols[1], cols[2], cols[3]);
+    }
+
 }



---------------------------------------------------------------------
To unsubscribe, e-mail: fop-commits-unsubscribe@xmlgraphics.apache.org
For additional commands, e-mail: fop-commits-help@xmlgraphics.apache.org