public abstract class org.apache.batik.svggen.AbstractImageHandlerEncoder extends org.apache.batik.svggen.DefaultImageHandler
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: org.apache.batik.svggen.AbstractImageHandlerEncoder
super_class: org.apache.batik.svggen.DefaultImageHandler
{
private static final java.awt.geom.AffineTransform IDENTITY;
descriptor: Ljava/awt/geom/AffineTransform;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.lang.String imageDir;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private java.lang.String urlRoot;
descriptor: Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
private static java.lang.reflect.Method createGraphics;
descriptor: Ljava/lang/reflect/Method;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean initDone;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final java.lang.Class[] paramc;
descriptor: [Ljava/lang/Class;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static java.lang.Object[] paramo;
descriptor: [Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new java.awt.geom.AffineTransform
dup
invokespecial java.awt.geom.AffineTransform.<init>:()V
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.IDENTITY:Ljava/awt/geom/AffineTransform;
1: aconst_null
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:Ljava/lang/reflect/Method;
2: iconst_0
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.initDone:Z
3: iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc Ljava/awt/image/BufferedImage;
aastore
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramc:[Ljava/lang/Class;
4: aconst_null
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramo:[Ljava/lang/Object;
return
LocalVariableTable:
Start End Slot Name Signature
private static java.awt.Graphics2D createGraphics(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Ljava/awt/Graphics2D;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.initDone:Z
ifne 13
1: ldc "org.apache.batik.ext.awt.image.GraphicsUtil"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 1
start local 1 2: aload 1
ldc "createGraphics"
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramc:[Ljava/lang/Class;
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:Ljava/lang/reflect/Method;
3: iconst_1
anewarray java.lang.Object
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramo:[Ljava/lang/Object;
end local 1 4: goto 12
StackMap locals:
StackMap stack: java.lang.ThreadDeath
5: astore 1
start local 1 6: aload 1
athrow
end local 1 7: StackMap locals:
StackMap stack: java.lang.Throwable
pop
8: iconst_1
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.initDone:Z
goto 13
9: StackMap locals:
StackMap stack: java.lang.Throwable
astore 2
10: iconst_1
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.initDone:Z
11: aload 2
athrow
12: StackMap locals:
StackMap stack:
iconst_1
putstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.initDone:Z
13: StackMap locals:
StackMap stack:
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:Ljava/lang/reflect/Method;
ifnonnull 15
14: aload 0
invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
areturn
15: StackMap locals:
StackMap stack:
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramo:[Ljava/lang/Object;
iconst_0
aload 0
aastore
16: aconst_null
astore 1
start local 1 17: getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:Ljava/lang/reflect/Method;
aconst_null
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.paramo:[Ljava/lang/Object;
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.awt.Graphics2D
astore 1
18: goto 20
StackMap locals: java.awt.image.BufferedImage java.awt.Graphics2D
StackMap stack: java.lang.Exception
19: pop
20: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 buf Ljava/awt/image/BufferedImage;
2 4 1 clazz Ljava/lang/Class;
6 7 1 td Ljava/lang/ThreadDeath;
17 21 1 g2d Ljava/awt/Graphics2D;
Exception table:
from to target type
1 4 5 Class java.lang.ThreadDeath
1 4 7 Class java.lang.Throwable
1 8 9 any
17 18 19 Class java.lang.Exception
MethodParameters:
Name Flags
buf
public void <init>(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial org.apache.batik.svggen.DefaultImageHandler.<init>:()V
1: aload 0
ldc ""
putfield org.apache.batik.svggen.AbstractImageHandlerEncoder.imageDir:Ljava/lang/String;
2: aload 0
ldc ""
putfield org.apache.batik.svggen.AbstractImageHandlerEncoder.urlRoot:Ljava/lang/String;
3: aload 1
ifnonnull 5
4: new org.apache.batik.svggen.SVGGraphics2DRuntimeException
dup
ldc "imageDir should not be null"
invokespecial org.apache.batik.svggen.SVGGraphics2DRuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: org.apache.batik.svggen.AbstractImageHandlerEncoder java.lang.String java.lang.String
StackMap stack:
new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 3
start local 3 6: aload 3
invokevirtual java.io.File.exists:()Z
ifne 8
7: new org.apache.batik.svggen.SVGGraphics2DRuntimeException
dup
ldc "imageDir does not exist"
invokespecial org.apache.batik.svggen.SVGGraphics2DRuntimeException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: java.io.File
StackMap stack:
aload 0
aload 1
putfield org.apache.batik.svggen.AbstractImageHandlerEncoder.imageDir:Ljava/lang/String;
9: aload 2
ifnull 11
10: aload 0
aload 2
putfield org.apache.batik.svggen.AbstractImageHandlerEncoder.urlRoot:Ljava/lang/String;
goto 18
11: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual java.io.File.toURI:()Ljava/net/URI;
invokevirtual java.net.URI.toURL:()Ljava/net/URL;
invokevirtual java.net.URL.toString:()Ljava/lang/String;
putfield org.apache.batik.svggen.AbstractImageHandlerEncoder.urlRoot:Ljava/lang/String;
12: goto 18
StackMap locals:
StackMap stack: java.net.MalformedURLException
13: astore 4
start local 4 14: new org.apache.batik.svggen.SVGGraphics2DIOException
dup
new java.lang.StringBuilder
dup
ldc "cannot convert imageDir to a URL value : "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
15: aload 4
invokevirtual java.net.MalformedURLException.getMessage:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: aload 4
17: invokespecial org.apache.batik.svggen.SVGGraphics2DIOException.<init>:(Ljava/lang/String;Ljava/io/IOException;)V
athrow
end local 4 18: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/batik/svggen/AbstractImageHandlerEncoder;
0 19 1 imageDir Ljava/lang/String;
0 19 2 urlRoot Ljava/lang/String;
6 19 3 imageDirFile Ljava/io/File;
14 18 4 e Ljava/net/MalformedURLException;
Exception table:
from to target type
11 12 13 Class java.net.MalformedURLException
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
imageDir
urlRoot
protected void handleHREF(java.awt.Image, org.w3c.dom.Element, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Ljava/awt/Image;Lorg/w3c/dom/Element;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.awt.Dimension
dup
aload 1
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
1: aload 1
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
2: invokespecial java.awt.Dimension.<init>:(II)V
astore 4
start local 4 3: aload 0
aload 4
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.buildBufferedImage:(Ljava/awt/Dimension;)Ljava/awt/image/BufferedImage;
astore 5
start local 5 4: aload 5
invokestatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:(Ljava/awt/image/BufferedImage;)Ljava/awt/Graphics2D;
astore 6
start local 6 5: aload 6
aload 1
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.Graphics2D.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
pop
6: aload 6
invokevirtual java.awt.Graphics2D.dispose:()V
7: aload 0
aload 2
aload 5
aload 3
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.saveBufferedImageToFile:(Lorg/w3c/dom/Element;Ljava/awt/image/BufferedImage;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
8: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/batik/svggen/AbstractImageHandlerEncoder;
0 9 1 image Ljava/awt/Image;
0 9 2 imageElement Lorg/w3c/dom/Element;
0 9 3 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
3 9 4 size Ljava/awt/Dimension;
4 9 5 buf Ljava/awt/image/BufferedImage;
5 9 6 g Ljava/awt/Graphics2D;
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
image
imageElement
generatorContext
protected void handleHREF(java.awt.image.RenderedImage, org.w3c.dom.Element, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Ljava/awt/image/RenderedImage;Lorg/w3c/dom/Element;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.awt.Dimension
dup
aload 1
invokeinterface java.awt.image.RenderedImage.getWidth:()I
aload 1
invokeinterface java.awt.image.RenderedImage.getHeight:()I
invokespecial java.awt.Dimension.<init>:(II)V
astore 4
start local 4 1: aload 0
aload 4
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.buildBufferedImage:(Ljava/awt/Dimension;)Ljava/awt/image/BufferedImage;
astore 5
start local 5 2: aload 5
invokestatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:(Ljava/awt/image/BufferedImage;)Ljava/awt/Graphics2D;
astore 6
start local 6 3: aload 6
aload 1
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.IDENTITY:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.Graphics2D.drawRenderedImage:(Ljava/awt/image/RenderedImage;Ljava/awt/geom/AffineTransform;)V
4: aload 6
invokevirtual java.awt.Graphics2D.dispose:()V
5: aload 0
aload 2
aload 5
aload 3
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.saveBufferedImageToFile:(Lorg/w3c/dom/Element;Ljava/awt/image/BufferedImage;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
6: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/batik/svggen/AbstractImageHandlerEncoder;
0 7 1 image Ljava/awt/image/RenderedImage;
0 7 2 imageElement Lorg/w3c/dom/Element;
0 7 3 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
1 7 4 size Ljava/awt/Dimension;
2 7 5 buf Ljava/awt/image/BufferedImage;
3 7 6 g Ljava/awt/Graphics2D;
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
image
imageElement
generatorContext
protected void handleHREF(java.awt.image.renderable.RenderableImage, org.w3c.dom.Element, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Ljava/awt/image/renderable/RenderableImage;Lorg/w3c/dom/Element;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: new java.awt.Dimension
dup
aload 1
invokeinterface java.awt.image.renderable.RenderableImage.getWidth:()F
f2d
invokestatic java.lang.Math.ceil:(D)D
d2i
1: aload 1
invokeinterface java.awt.image.renderable.RenderableImage.getHeight:()F
f2d
invokestatic java.lang.Math.ceil:(D)D
d2i
2: invokespecial java.awt.Dimension.<init>:(II)V
astore 4
start local 4 3: aload 0
aload 4
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.buildBufferedImage:(Ljava/awt/Dimension;)Ljava/awt/image/BufferedImage;
astore 5
start local 5 4: aload 5
invokestatic org.apache.batik.svggen.AbstractImageHandlerEncoder.createGraphics:(Ljava/awt/image/BufferedImage;)Ljava/awt/Graphics2D;
astore 6
start local 6 5: aload 6
aload 1
getstatic org.apache.batik.svggen.AbstractImageHandlerEncoder.IDENTITY:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.Graphics2D.drawRenderableImage:(Ljava/awt/image/renderable/RenderableImage;Ljava/awt/geom/AffineTransform;)V
6: aload 6
invokevirtual java.awt.Graphics2D.dispose:()V
7: aload 0
aload 2
aload 5
aload 3
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.saveBufferedImageToFile:(Lorg/w3c/dom/Element;Ljava/awt/image/BufferedImage;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
8: return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lorg/apache/batik/svggen/AbstractImageHandlerEncoder;
0 9 1 image Ljava/awt/image/renderable/RenderableImage;
0 9 2 imageElement Lorg/w3c/dom/Element;
0 9 3 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
3 9 4 size Ljava/awt/Dimension;
4 9 5 buf Ljava/awt/image/BufferedImage;
5 9 6 g Ljava/awt/Graphics2D;
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
image
imageElement
generatorContext
private void saveBufferedImageToFile(org.w3c.dom.Element, java.awt.image.BufferedImage, org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Lorg/w3c/dom/Element;Ljava/awt/image/BufferedImage;Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
ifnonnull 2
1: new org.apache.batik.svggen.SVGGraphics2DRuntimeException
dup
ldc "generatorContext should not be null"
invokespecial org.apache.batik.svggen.SVGGraphics2DRuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aconst_null
astore 4
start local 4 3: goto 8
4: StackMap locals: java.io.File
StackMap stack:
aload 3
getfield org.apache.batik.svggen.SVGGeneratorContext.idGenerator:Lorg/apache/batik/svggen/SVGIDGenerator;
aload 0
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.getPrefix:()Ljava/lang/String;
invokevirtual org.apache.batik.svggen.SVGIDGenerator.generateID:(Ljava/lang/String;)Ljava/lang/String;
astore 5
start local 5 5: new java.io.File
dup
aload 0
getfield org.apache.batik.svggen.AbstractImageHandlerEncoder.imageDir:Ljava/lang/String;
new java.lang.StringBuilder
dup
aload 5
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.getSuffix:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.io.File.<init>:(Ljava/lang/String;Ljava/lang/String;)V
astore 4
6: aload 4
invokevirtual java.io.File.exists:()Z
ifeq 8
7: aconst_null
astore 4
end local 5 8: StackMap locals:
StackMap stack:
aload 4
ifnull 4
9: aload 0
aload 2
aload 4
invokevirtual org.apache.batik.svggen.AbstractImageHandlerEncoder.encodeImage:(Ljava/awt/image/BufferedImage;Ljava/io/File;)V
10: aload 1
ldc "http://www.w3.org/1999/xlink"
11: ldc "xlink:href"
new java.lang.StringBuilder
dup
aload 0
getfield org.apache.batik.svggen.AbstractImageHandlerEncoder.urlRoot:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "/"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
12: aload 4
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/batik/svggen/AbstractImageHandlerEncoder;
0 15 1 imageElement Lorg/w3c/dom/Element;
0 15 2 buf Ljava/awt/image/BufferedImage;
0 15 3 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
3 15 4 imageFile Ljava/io/File;
5 8 5 fileId Ljava/lang/String;
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
imageElement
buf
generatorContext
public abstract java.lang.String getSuffix();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract java.lang.String getPrefix();
descriptor: ()Ljava/lang/String;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
public abstract void encodeImage(java.awt.image.BufferedImage, java.io.File);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/io/File;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws org.apache.batik.svggen.SVGGraphics2DIOException
MethodParameters:
Name Flags
buf
imageFile
public abstract java.awt.image.BufferedImage buildBufferedImage(java.awt.Dimension);
descriptor: (Ljava/awt/Dimension;)Ljava/awt/image/BufferedImage;
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
MethodParameters:
Name Flags
size
}
SourceFile: "AbstractImageHandlerEncoder.java"