aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMehdi Houshmand <mehdi@apache.org>2012-07-06 15:22:59 +0000
committerMehdi Houshmand <mehdi@apache.org>2012-07-06 15:22:59 +0000
commit3325a6c6c4114b2cbd3926b79e057a92660b8c0d (patch)
treed676f17884847bfb6cf66330716424bd184ec600
parente17daf009f0f93dd1149dabdfb00b9c014805366 (diff)
downloadxmlgraphics-fop-3325a6c6c4114b2cbd3926b79e057a92660b8c0d.tar.gz
xmlgraphics-fop-3325a6c6c4114b2cbd3926b79e057a92660b8c0d.zip
Updated XGC with r1358258 - consolidated some GraphicsConfiguration classes so as to remove duplicated code
git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1358259 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--lib/xmlgraphics-commons-1.5svn.jarbin600660 -> 602381 bytes
-rw-r--r--src/java/org/apache/fop/afp/AFPGraphics2D.java5
-rw-r--r--src/java/org/apache/fop/afp/svg/AFPGraphicsConfiguration.java152
-rw-r--r--src/java/org/apache/fop/afp/svg/AFPGraphicsDevice.java80
-rw-r--r--src/java/org/apache/fop/svg/PDFGraphics2D.java3
5 files changed, 5 insertions, 235 deletions
diff --git a/lib/xmlgraphics-commons-1.5svn.jar b/lib/xmlgraphics-commons-1.5svn.jar
index be61b0b6e..9de9cabe5 100644
--- a/lib/xmlgraphics-commons-1.5svn.jar
+++ b/lib/xmlgraphics-commons-1.5svn.jar
Binary files differ
diff --git a/src/java/org/apache/fop/afp/AFPGraphics2D.java b/src/java/org/apache/fop/afp/AFPGraphics2D.java
index 7172b0ee3..d0a959ad0 100644
--- a/src/java/org/apache/fop/afp/AFPGraphics2D.java
+++ b/src/java/org/apache/fop/afp/AFPGraphics2D.java
@@ -26,6 +26,7 @@ import java.awt.Dimension;
import java.awt.Font;
import java.awt.FontMetrics;
import java.awt.Graphics;
+import java.awt.Graphics2D;
import java.awt.GraphicsConfiguration;
import java.awt.Image;
import java.awt.Paint;
@@ -52,13 +53,13 @@ import org.apache.xmlgraphics.image.loader.ImageSize;
import org.apache.xmlgraphics.image.loader.impl.ImageRendered;
import org.apache.xmlgraphics.java2d.AbstractGraphics2D;
import org.apache.xmlgraphics.java2d.GraphicContext;
+import org.apache.xmlgraphics.java2d.GraphicsConfigurationWithTransparency;
import org.apache.xmlgraphics.java2d.StrokingTextHandler;
import org.apache.xmlgraphics.java2d.TextHandler;
import org.apache.xmlgraphics.util.UnitConv;
import org.apache.fop.afp.goca.GraphicsSetLineType;
import org.apache.fop.afp.modca.GraphicsObject;
-import org.apache.fop.afp.svg.AFPGraphicsConfiguration;
import org.apache.fop.afp.util.CubicBezierApproximator;
import org.apache.fop.fonts.FontInfo;
import org.apache.fop.render.afp.AFPImageHandlerRenderedImage;
@@ -111,7 +112,7 @@ public class AFPGraphics2D extends AbstractGraphics2D implements NativeImageHand
private AFPPaintingState paintingState = null;
/** AFP graphics configuration */
- private final AFPGraphicsConfiguration graphicsConfig = new AFPGraphicsConfiguration();
+ private final GraphicsConfigurationWithTransparency graphicsConfig = new GraphicsConfigurationWithTransparency();
/** The AFP FontInfo */
private FontInfo fontInfo;
diff --git a/src/java/org/apache/fop/afp/svg/AFPGraphicsConfiguration.java b/src/java/org/apache/fop/afp/svg/AFPGraphicsConfiguration.java
deleted file mode 100644
index 0a051e675..000000000
--- a/src/java/org/apache/fop/afp/svg/AFPGraphicsConfiguration.java
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/* $Id$ */
-
-package org.apache.fop.afp.svg;
-
-import java.awt.GraphicsDevice;
-import java.awt.Rectangle;
-import java.awt.Transparency;
-import java.awt.geom.AffineTransform;
-import java.awt.image.BufferedImage;
-import java.awt.image.ColorModel;
-
-import org.apache.commons.logging.Log;
-import org.apache.commons.logging.LogFactory;
-
-import org.apache.fop.svg.GraphicsConfiguration;
-
-/**
- * Our implementation of the class that returns information about
- * roughly what we can handle and want to see (alpha for example).
- */
-public class AFPGraphicsConfiguration extends GraphicsConfiguration {
- // We use this to get a good colormodel..
- private static final BufferedImage BI_WITH_ALPHA
- = new BufferedImage(1, 1, BufferedImage.TYPE_INT_ARGB);
- // We use this to get a good colormodel..
- private static final BufferedImage BI_WITHOUT_ALPHA
- = new BufferedImage(1, 1, BufferedImage.TYPE_INT_RGB);
-
- /**
- * Construct a buffered image with an alpha channel, unless
- * transparencty is OPAQUE (no alpha at all).
- *
- * @param width the width of the image
- * @param height the height of the image
- * @param transparency the alpha value of the image
- * @return the new buffered image
- */
- public BufferedImage createCompatibleImage(int width, int height,
- int transparency) {
- if (transparency == Transparency.OPAQUE) {
- return new BufferedImage(width, height,
- BufferedImage.TYPE_INT_RGB);
- } else {
- return new BufferedImage(width, height,
- BufferedImage.TYPE_INT_ARGB);
- }
- }
-
- /**
- * Construct a buffered image with an alpha channel.
- *
- * @param width the width of the image
- * @param height the height of the image
- * @return the new buffered image
- */
- public BufferedImage createCompatibleImage(int width, int height) {
- return new BufferedImage(width, height,
- BufferedImage.TYPE_INT_ARGB);
- }
-
- /**
- * TODO: This should return the page bounds in Pts,
- * I couldn't figure out how to get this for the current
- * page (this still works for now,
- * but it should be fixed...).
- *
- * @return the bounds of the page
- */
- public Rectangle getBounds() {
- return null;
- }
-
- /**
- * Return a good default color model for this 'device'.
- * @return the colour model for the configuration
- */
- public ColorModel getColorModel() {
- return BI_WITH_ALPHA.getColorModel();
- }
-
- /**
- * Return a good color model given <code>transparency</code>
- *
- * @param transparency the alpha value for the colour model
- * @return the colour model for the configuration
- */
- public ColorModel getColorModel(int transparency) {
- if (transparency == Transparency.OPAQUE) {
- return BI_WITHOUT_ALPHA.getColorModel();
- } else {
- return BI_WITH_ALPHA.getColorModel();
- }
- }
-
- private static final Log LOG
- = LogFactory.getLog(AFPGraphicsConfiguration.class);
-
- private AffineTransform defaultTransform = null;
- private AffineTransform normalizingTransform = null;
- private final GraphicsDevice graphicsDevice = new AFPGraphicsDevice(this);;
-
- /**
- * The default transform (1:1).
- *
- * @return the default transform for the configuration
- */
- public AffineTransform getDefaultTransform() {
- LOG.debug("getDefaultTransform()");
- if (defaultTransform == null) {
- defaultTransform = new AffineTransform();
- }
- return defaultTransform;
- }
-
- /**
- * The normalizing transform (1:1) (since we currently
- * render images at 72dpi, which we might want to change
- * in the future).
- *
- * @return the normalizing transform for the configuration
- */
- public AffineTransform getNormalizingTransform() {
- LOG.debug("getNormalizingTransform()");
- if (normalizingTransform == null) {
- normalizingTransform = new AffineTransform(2, 0, 0, 2, 0, 0);
- }
- return normalizingTransform;
- }
-
- /** {@inheritDoc} */
- public GraphicsDevice getDevice() {
- LOG.debug("getDevice()");
- return graphicsDevice;
- }
-}
diff --git a/src/java/org/apache/fop/afp/svg/AFPGraphicsDevice.java b/src/java/org/apache/fop/afp/svg/AFPGraphicsDevice.java
deleted file mode 100644
index daa25aaa0..000000000
--- a/src/java/org/apache/fop/afp/svg/AFPGraphicsDevice.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-/* $Id$ */
-
-package org.apache.fop.afp.svg;
-
-import java.awt.GraphicsConfiguration;
-import java.awt.GraphicsDevice;
-
-/**
- * This implements the GraphicsDevice interface as appropriate for
- * an AFPGraphics2D.
- */
-public class AFPGraphicsDevice extends GraphicsDevice {
-
- /**
- * The Graphics Config that created us...
- */
- protected GraphicsConfiguration gc;
-
- /**
- * Create a new AF{ graphics device.
- *
- * @param gc The graphics configuration we should reference
- */
- public AFPGraphicsDevice(AFPGraphicsConfiguration gc) {
- this.gc = gc;
- }
-
- /**
- * Return an array of our one GraphicsConfig
- *
- * @return an array containing the one graphics configuration
- */
- public GraphicsConfiguration[] getConfigurations() {
- return new GraphicsConfiguration[] {gc};
- }
-
- /**
- * Return out sole GraphicsConfig.
- *
- * @return the graphics configuration that created this object
- */
- public GraphicsConfiguration getDefaultConfiguration() {
- return this.gc;
- }
-
- /**
- * Generate an IdString..
- *
- * @return the ID string for this device, uses toString
- */
- public String getIDstring() {
- return toString();
- }
-
- /**
- * Let the caller know that we are "a printer"
- *
- * @return the type which is always printer
- */
- public int getType() {
- return GraphicsDevice.TYPE_PRINTER;
- }
-}
diff --git a/src/java/org/apache/fop/svg/PDFGraphics2D.java b/src/java/org/apache/fop/svg/PDFGraphics2D.java
index 87c12d869..7517babf2 100644
--- a/src/java/org/apache/fop/svg/PDFGraphics2D.java
+++ b/src/java/org/apache/fop/svg/PDFGraphics2D.java
@@ -68,6 +68,7 @@ import org.apache.xmlgraphics.image.loader.impl.ImageRawJPEG;
import org.apache.xmlgraphics.image.loader.impl.ImageRendered;
import org.apache.xmlgraphics.java2d.AbstractGraphics2D;
import org.apache.xmlgraphics.java2d.GraphicContext;
+import org.apache.xmlgraphics.java2d.GraphicsConfigurationWithTransparency;
import org.apache.fop.fonts.Font;
import org.apache.fop.fonts.FontInfo;
@@ -1765,7 +1766,7 @@ public class PDFGraphics2D extends AbstractGraphics2D implements NativeImageHand
*/
@Override
public GraphicsConfiguration getDeviceConfiguration() {
- return new PDFGraphicsConfiguration();
+ return new GraphicsConfigurationWithTransparency();
}
/**