You are viewing a plain text version of this content. The canonical link for it is here.
Posted to batik-dev@xmlgraphics.apache.org by tk...@apache.org on 2001/01/14 22:27:48 UTC

cvs commit: xml-batik/sources/org/apache/batik/transcoder Transcoder.java TranscoderException.java package.html TranscoderFactory.java

tkormann    01/01/14 13:27:48

  Modified:    resources/org/apache/batik/apps/svgviewer/resources back.gif
                        forward.gif open.gif unzoom.gif zoomin.gif
                        zoomout.gif
               sources/org/apache/batik/apps/rasterizer Main.java
               sources/org/apache/batik/apps/regard Main.java
               sources/org/apache/batik/apps/regsvggen Main.java
               sources/org/apache/batik/refimpl/bridge
                        SVGImageElementBridge.java
                        SVGPatternElementBridge.java
                        SVGSVGElementBridge.java SVGUtilities.java
               sources/org/apache/batik/refimpl/transcoder
                        ImageTranscoder.java
               sources/org/apache/batik/refimpl/util JSVGCanvas.java
               sources/org/apache/batik/transcoder Transcoder.java
                        TranscoderException.java package.html
  Removed:     sources/org/apache/batik/refimpl/transcoder
                        ConcreteTranscoderFactory.java
               sources/org/apache/batik/transcoder TranscoderFactory.java
  Log:
  update icons
  improve the future new API for transcoder (no more TranscoderFactory, as we can image for than one transcoder that transform SVG->SVG). The factory is limiting the design in fact.
  take care of rasterizer and regression tools that still work with the old API and classes
  
  Revision  Changes    Path
  1.5       +3 -1      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/back.gif
  
  	<<Binary file>>
  
  
  1.5       +2 -2      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/forward.gif
  
  	<<Binary file>>
  
  
  1.6       +1 -2      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/open.gif
  
  	<<Binary file>>
  
  
  1.6       +2 -1      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/unzoom.gif
  
  	<<Binary file>>
  
  
  1.8       +2 -1      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/zoomin.gif
  
  	<<Binary file>>
  
  
  1.8       +1 -1      xml-batik/resources/org/apache/batik/apps/svgviewer/resources/zoomout.gif
  
  	<<Binary file>>
  
  
  1.4       +13 -5     xml-batik/sources/org/apache/batik/apps/rasterizer/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/apps/rasterizer/Main.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Main.java	2001/01/09 10:24:21	1.3
  +++ Main.java	2001/01/14 21:27:46	1.4
  @@ -19,17 +19,17 @@
   import java.util.List;
   import java.net.URL;
   import java.net.MalformedURLException;
  -import org.apache.batik.refimpl.transcoder.ConcreteTranscoderFactory;
   import org.apache.batik.refimpl.transcoder.ImageTranscoder;
  +import org.apache.batik.refimpl.transcoder.PngTranscoder;
  +import org.apache.batik.refimpl.transcoder.JpegTranscoder;
   import org.apache.batik.transcoder.Transcoder;
  -import org.apache.batik.transcoder.TranscoderFactory;
   import org.xml.sax.InputSource;
   
   /**
    * A simple class that can generate images from svg documents.
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version $Id: Main.java,v 1.3 2001/01/09 10:24:21 tkormann Exp $
  + * @version $Id: Main.java,v 1.4 2001/01/14 21:27:46 tkormann Exp $
    */
   public class Main {
   
  @@ -92,9 +92,17 @@
                   continue;
               }
           }
  -        TranscoderFactory factory =
  +        /*TranscoderFactory factory =
               ConcreteTranscoderFactory.getTranscoderFactoryImplementation();
  -        Transcoder t = factory.createTranscoder(mimeType);
  +            */
  +        Transcoder t = null;
  +        if (mimeType.equals("image/jpg") ||
  +                mimeType.equals("image/jpeg") ||
  +                mimeType.equals("image/jpe")) {
  +            t = new JpegTranscoder();
  +        } else if (mimeType.equals("image/png")) {
  +            t = new PngTranscoder();
  +        }
           if (t == null) {
               error("No transcoder found for mime type : "+mimeType);
               System.exit(1);
  
  
  
  1.4       +4 -16     xml-batik/sources/org/apache/batik/apps/regard/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/apps/regard/Main.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- Main.java	2001/01/09 10:24:22	1.3
  +++ Main.java	2001/01/14 21:27:46	1.4
  @@ -30,10 +30,9 @@
   import java.awt.image.DataBufferInt;
   import java.net.MalformedURLException;
   import java.net.URL;
  -import org.apache.batik.refimpl.transcoder.ConcreteTranscoderFactory;
   import org.apache.batik.refimpl.transcoder.ImageTranscoder;
   import org.apache.batik.transcoder.Transcoder;
  -import org.apache.batik.transcoder.TranscoderFactory;
  +import org.apache.batik.refimpl.transcoder.PngTranscoder;
   import org.apache.batik.transcoder.TranscoderException;
   import org.apache.batik.util.awt.image.ImageLoader;
   import org.xml.sax.InputSource;
  @@ -43,7 +42,7 @@
    *
    * @author <a href="mailto:spei@cs.uiowa.edu">Sheng Pei</a>
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version  $Id: Main.java,v 1.3 2001/01/09 10:24:22 tkormann Exp $
  + * @version  $Id: Main.java,v 1.4 2001/01/14 21:27:46 tkormann Exp $
    */
   public class Main {
   
  @@ -215,18 +214,9 @@
       }
   
       static String getImageName(String uri) {
  -        String mimeType = getTranscoder().getMimeType();
           if (uri.endsWith(".svg")) {
               uri = uri.substring(0, uri.lastIndexOf(".svg"));
  -            int k = mimeType.lastIndexOf('/');
  -            if (k > 0) {
  -                String ext = mimeType.substring(k+1);
  -                if (ext.length() > 0) {
  -                    uri += "."+ext;
  -                }
  -            } else {
  -                uri += "."+mimeType;
  -            }
  +            uri += ".png";
           }
           return uri;
       }
  @@ -514,9 +504,7 @@
        * Returns the transcoder to use.
        */
       public static Transcoder getTranscoder() {
  -        TranscoderFactory factory =
  -            ConcreteTranscoderFactory.getTranscoderFactoryImplementation();
  -        return factory.createTranscoder("image/png");
  +        return new PngTranscoder();
       }
   
       /**
  
  
  
  1.6       +5 -25     xml-batik/sources/org/apache/batik/apps/regsvggen/Main.java
  
  Index: Main.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/apps/regsvggen/Main.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- Main.java	2001/01/09 10:24:23	1.5
  +++ Main.java	2001/01/14 21:27:46	1.6
  @@ -38,11 +38,10 @@
   import java.awt.image.DataBufferInt;
   import java.net.MalformedURLException;
   
  -import org.apache.batik.refimpl.transcoder.ConcreteTranscoderFactory;
   import org.apache.batik.refimpl.transcoder.ImageTranscoder;
  +import org.apache.batik.refimpl.transcoder.PngTranscoder;
   
   import org.apache.batik.transcoder.Transcoder;
  -import org.apache.batik.transcoder.TranscoderFactory;
   
   import org.apache.batik.util.awt.image.ImageLoader;
   import org.apache.batik.util.awt.svg.*;
  @@ -62,7 +61,7 @@
    * A regression checking tool for SVG generator test cases.
    *
    * @author <a href="mailto:spei@cs.uiowa.edu">Sheng Pei</a>
  - * @version $Id: Main.java,v 1.5 2001/01/09 10:24:23 tkormann Exp $
  + * @version $Id: Main.java,v 1.6 2001/01/14 21:27:46 tkormann Exp $
    */
   public class Main {
   
  @@ -747,30 +746,13 @@
       // Convenient methods
       //
       static String getImageName(String uri) {
  -        String mimeType = getTranscoder().getMimeType();
           if (uri.endsWith(".svg")) {
               uri = uri.substring(0, uri.lastIndexOf(".svg"));
  -            int k = mimeType.lastIndexOf('/');
  -            if (k > 0) {
  -                String ext = mimeType.substring(k+1);
  -                if (ext.length() > 0) {
  -                    uri += "."+ext;
  -                }
  -            } else {
  -                uri += "."+mimeType;
  -            }
  +            uri += ".png";
           }
           else if (uri.endsWith(".xml")) {
               uri = uri.substring(0, uri.lastIndexOf(".xml"));
  -            int k = mimeType.lastIndexOf('/');
  -            if (k > 0) {
  -                String ext = mimeType.substring(k+1);
  -                if (ext.length() > 0) {
  -                    uri += "."+ext;
  -                }
  -            } else {
  -                uri += "."+mimeType;
  -            }
  +            uri += ".png";
           }
           return uri;
       }
  @@ -918,9 +900,7 @@
        * Returns the transcoder to use.
        */
       public static Transcoder getTranscoder() {
  -        TranscoderFactory factory =
  -            ConcreteTranscoderFactory.getTranscoderFactoryImplementation();
  -        return factory.createTranscoder("image/png");
  +        return new PngTranscoder();
       }
   
       /**
  
  
  
  1.22      +4 -4      xml-batik/sources/org/apache/batik/refimpl/bridge/SVGImageElementBridge.java
  
  Index: SVGImageElementBridge.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/bridge/SVGImageElementBridge.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- SVGImageElementBridge.java	2000/12/28 09:37:46	1.21
  +++ SVGImageElementBridge.java	2001/01/14 21:27:46	1.22
  @@ -61,7 +61,7 @@
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
    * @author <a href="mailto:Thomas.DeWeeese@Kodak.com">Thomas DeWeese</a>
  - * @version $Id: SVGImageElementBridge.java,v 1.21 2000/12/28 09:37:46 hillion Exp $
  + * @version $Id: SVGImageElementBridge.java,v 1.22 2001/01/14 21:27:46 tkormann Exp $
    */
   public class SVGImageElementBridge implements GraphicsNodeBridge,
                                                 SVGConstants {
  @@ -132,7 +132,7 @@
           return imgNode;
       }
   
  -    public void buildGraphicsNode(GraphicsNode node, 
  +    public void buildGraphicsNode(GraphicsNode node,
                                     BridgeContext ctx,
                                     Element element) {
           CSSStyleDeclaration cssDecl
  @@ -219,7 +219,7 @@
           float h = (float)bounds.getHeight();
           AffineTransform at;
           at = SVGUtilities.getPreserveAspectRatioTransform
  -            (element, w, h, ctx.getParserFactory());
  +            (element, w, h);
           at.preConcatenate(AffineTransform.getTranslateInstance(x, y));
           result.setTransform(at);
           try {
  @@ -228,7 +228,7 @@
               GraphicsNodeRableFactory gnrFactory
                   = ctx.getGraphicsNodeRableFactory();
   
  -            Filter filter = gnrFactory.createGraphicsNodeRable(node, 
  +            Filter filter = gnrFactory.createGraphicsNodeRable(node,
                                          ctx.getGraphicsNodeRenderContext());
   
               Shape clip = at.createTransformedShape
  
  
  
  1.17      +3 -4      xml-batik/sources/org/apache/batik/refimpl/bridge/SVGPatternElementBridge.java
  
  Index: SVGPatternElementBridge.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/bridge/SVGPatternElementBridge.java,v
  retrieving revision 1.16
  retrieving revision 1.17
  diff -u -r1.16 -r1.17
  --- SVGPatternElementBridge.java	2000/12/17 23:20:54	1.16
  +++ SVGPatternElementBridge.java	2001/01/14 21:27:46	1.17
  @@ -44,7 +44,7 @@
    * a <tt>PatternPaint</tt>
    *
    * @author <a href="mailto:vincent.hardy@eng.sun.com">Vincent Hardy</a>
  - * @version $Id: SVGPatternElementBridge.java,v 1.16 2000/12/17 23:20:54 billh Exp $
  + * @version $Id: SVGPatternElementBridge.java,v 1.17 2001/01/14 21:27:46 tkormann Exp $
    */
   public class SVGPatternElementBridge implements PaintBridge, SVGConstants {
   
  @@ -83,7 +83,7 @@
                                   Element paintedElement,
                                   Element paintElement) {
   
  -        GraphicsNodeRenderContext rc = 
  +        GraphicsNodeRenderContext rc =
                            ctx.getGraphicsNodeRenderContext();
   
           Viewport oldViewport = ctx.getCurrentViewport();
  @@ -193,8 +193,7 @@
                   = SVGUtilities.getPreserveAspectRatioTransform
                   ((SVGElement)paintElement,
                    (float)patternRegion.getWidth(),
  -                 (float)patternRegion.getHeight(),
  -                 ctx.getParserFactory());
  +                 (float)patternRegion.getHeight());
   
               float vb[] = SVGUtilities.parseViewBoxAttribute(viewBoxAttr);
               viewBox = new Rectangle2D.Float(vb[0], vb[1], vb[2], vb[3]);
  
  
  
  1.19      +3 -3      xml-batik/sources/org/apache/batik/refimpl/bridge/SVGSVGElementBridge.java
  
  Index: SVGSVGElementBridge.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/bridge/SVGSVGElementBridge.java,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- SVGSVGElementBridge.java	2000/12/28 09:37:46	1.18
  +++ SVGSVGElementBridge.java	2001/01/14 21:27:46	1.19
  @@ -37,7 +37,7 @@
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
    * @author <a href="mailto:stephane@hillion.org">Stephane Hillion</a>
  - * @version $Id: SVGSVGElementBridge.java,v 1.18 2000/12/28 09:37:46 hillion Exp $
  + * @version $Id: SVGSVGElementBridge.java,v 1.19 2001/01/14 21:27:46 tkormann Exp $
    */
   public class SVGSVGElementBridge implements GraphicsNodeBridge, SVGConstants {
   
  @@ -104,7 +104,7 @@
           // parse the tranform attribute
           AffineTransform at;
           at = SVGUtilities.getPreserveAspectRatioTransform
  -            (svgElement, w, h, ctx.getParserFactory());
  +            (svgElement, w, h);
           at.preConcatenate(AffineTransform.getTranslateInstance(x, y));
           if (svgElement.getOwnerSVGElement() != null) {
               // <!> as it is already done in the JSVGCanvas, we don't have to
  @@ -135,7 +135,7 @@
           return node;
       }
   
  -    public void buildGraphicsNode(GraphicsNode node, 
  +    public void buildGraphicsNode(GraphicsNode node,
                                     BridgeContext ctx,
                                     Element element) {
   
  
  
  
  1.13      +3 -4      xml-batik/sources/org/apache/batik/refimpl/bridge/SVGUtilities.java
  
  Index: SVGUtilities.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/bridge/SVGUtilities.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- SVGUtilities.java	2000/12/28 09:37:47	1.12
  +++ SVGUtilities.java	2001/01/14 21:27:46	1.13
  @@ -45,7 +45,7 @@
    *
    * @author <a href="mailto:stephane@hillion.org">Stephane Hillion</a>
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version $Id: SVGUtilities.java,v 1.12 2000/12/28 09:37:47 hillion Exp $
  + * @version $Id: SVGUtilities.java,v 1.13 2001/01/14 21:27:46 tkormann Exp $
    */
   public class SVGUtilities implements SVGConstants {
       /**
  @@ -285,8 +285,7 @@
       public static AffineTransform getPreserveAspectRatioTransform
               (SVGElement    elt,
                float         w,
  -             float         h,
  -             ParserFactory pf) {
  +             float         h) {
           AffineTransform result = new AffineTransform();
           String vba = elt.getAttributeNS(null, ATTR_VIEW_BOX);
           float[] vb = parseViewBoxAttribute(vba);
  @@ -297,7 +296,7 @@
               return result;
           }
   
  -        PreserveAspectRatioParser p = pf.createPreserveAspectRatioParser();
  +        PreserveAspectRatioParser p = new PreserveAspectRatioParser();
           PreserveAspectRatio ph = new PreserveAspectRatio();
           p.setPreserveAspectRatioHandler(ph);
   
  
  
  
  1.13      +2 -2      xml-batik/sources/org/apache/batik/refimpl/transcoder/ImageTranscoder.java
  
  Index: ImageTranscoder.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/transcoder/ImageTranscoder.java,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- ImageTranscoder.java	2000/12/28 09:37:50	1.12
  +++ ImageTranscoder.java	2001/01/14 21:27:47	1.13
  @@ -41,7 +41,7 @@
    * A generic <tt>Transcoder</tt> to transcode document to an image.
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version $Id: ImageTranscoder.java,v 1.12 2000/12/28 09:37:50 hillion Exp $
  + * @version $Id: ImageTranscoder.java,v 1.13 2001/01/14 21:27:47 tkormann Exp $
    */
   public abstract class ImageTranscoder extends AbstractTranscoder {
   
  @@ -87,7 +87,7 @@
           Renderer renderer = rendererFactory.createRenderer(img);
   
           AffineTransform t = SVGUtilities.getPreserveAspectRatioTransform
  -            (elt, w, h, parserFactory);
  +            (elt, w, h);
           renderer.setTransform(t);
           renderer.setTree(gvtRoot);
           try {
  
  
  
  1.69      +3 -3      xml-batik/sources/org/apache/batik/refimpl/util/JSVGCanvas.java
  
  Index: JSVGCanvas.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/refimpl/util/JSVGCanvas.java,v
  retrieving revision 1.68
  retrieving revision 1.69
  diff -u -r1.68 -r1.69
  --- JSVGCanvas.java	2001/01/02 10:10:26	1.68
  +++ JSVGCanvas.java	2001/01/14 21:27:47	1.69
  @@ -114,7 +114,7 @@
    *
    * @author <a href="mailto:stephane@hillion.org">Stephane Hillion</a>
    * @author <a href="mailto:cjolif@ilog.fr">Christophe Jolif</a>
  - * @version $Id: JSVGCanvas.java,v 1.68 2001/01/02 10:10:26 tkormann Exp $
  + * @version $Id: JSVGCanvas.java,v 1.69 2001/01/14 21:27:47 tkormann Exp $
    */
   public class JSVGCanvas
       extends    JComponent
  @@ -1053,7 +1053,7 @@
           int h = size.height;
   
           transform = SVGUtilities.getPreserveAspectRatioTransform
  -            (elt, w, h, parserFactory);
  +            (elt, w, h);
   
           initialScale = transform.getScaleX();
           updateBaseTransform();
  @@ -1945,7 +1945,7 @@
               int h = size.height;
   
               transform = SVGUtilities.getPreserveAspectRatioTransform
  -                (elt, w, h, parserFactory);
  +                (elt, w, h);
   
               if (transform.isIdentity()) {
                   float dw = elt.getWidth().getBaseVal().getValue();
  
  
  
  1.3       +1 -6      xml-batik/sources/org/apache/batik/transcoder/Transcoder.java
  
  Index: Transcoder.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/Transcoder.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Transcoder.java	2001/01/09 10:24:24	1.2
  +++ Transcoder.java	2001/01/14 21:27:47	1.3
  @@ -14,7 +14,7 @@
    * This class defines an API for transcoding.
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version $Id: Transcoder.java,v 1.2 2001/01/09 10:24:24 tkormann Exp $
  + * @version $Id: Transcoder.java,v 1.3 2001/01/14 21:27:47 tkormann Exp $
    */
   public interface Transcoder {
   
  @@ -59,9 +59,4 @@
        * warnings and errors, or null if any.
        */
       ErrorHandler getErrorHandler();
  -
  -    /**
  -     * Returns the mime type of the ouput format of this transcoder.
  -     */
  -    String getMimeType();
   }
  
  
  
  1.3       +17 -1     xml-batik/sources/org/apache/batik/transcoder/TranscoderException.java
  
  Index: TranscoderException.java
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/TranscoderException.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- TranscoderException.java	2001/01/09 10:24:24	1.2
  +++ TranscoderException.java	2001/01/14 21:27:47	1.3
  @@ -12,7 +12,7 @@
    * Thrown when a transcoder is not able to transcode its input.
    *
    * @author <a href="mailto:Thierry.Kormann@sophia.inria.fr">Thierry Kormann</a>
  - * @version $Id: TranscoderException.java,v 1.2 2001/01/09 10:24:24 tkormann Exp $
  + * @version $Id: TranscoderException.java,v 1.3 2001/01/14 21:27:47 tkormann Exp $
    */
   public class TranscoderException extends Exception {
   
  @@ -43,6 +43,22 @@
       public TranscoderException(String s, Exception ex) {
           super(s);
           this.ex = ex;
  +    }
  +
  +    /**
  +     * Returns the message of this exception. If an error message has
  +     * been specified, returns that one. Otherwise, return the error message
  +     * of enclosed exception or null if any.
  +     */
  +    public String getMessage() {
  +        String msg = super.getMessage();
  +        if (msg != null) {
  +            return msg;
  +        } else if (ex != null) {
  +            return ex.getMessage();
  +        } else {
  +            return null;
  +        }
       }
   
       /**
  
  
  
  1.2       +3 -1      xml-batik/sources/org/apache/batik/transcoder/package.html
  
  Index: package.html
  ===================================================================
  RCS file: /home/cvs/xml-batik/sources/org/apache/batik/transcoder/package.html,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- package.html	2000/10/23 16:08:06	1.1
  +++ package.html	2001/01/14 21:27:47	1.2
  @@ -8,5 +8,7 @@
     <body>
       Contains all of the interfaces for transcoding an input stream or
       a document to a particular ouput format.
  -  </body>
  +
  +
  +</body>
   </html>