public class org.apache.batik.svggen.SVGTexturePaint extends org.apache.batik.svggen.AbstractSVGConverter
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.batik.svggen.SVGTexturePaint
super_class: org.apache.batik.svggen.AbstractSVGConverter
{
public void <init>(org.apache.batik.svggen.SVGGeneratorContext);
descriptor: (Lorg/apache/batik/svggen/SVGGeneratorContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.batik.svggen.SVGTexturePaint this
start local 1 // org.apache.batik.svggen.SVGGeneratorContext generatorContext
0: .line 43
aload 0 /* this */
aload 1 /* generatorContext */
invokespecial org.apache.batik.svggen.AbstractSVGConverter.<init>:(Lorg/apache/batik/svggen/SVGGeneratorContext;)V
1: .line 44
return
end local 1 // org.apache.batik.svggen.SVGGeneratorContext generatorContext
end local 0 // org.apache.batik.svggen.SVGTexturePaint this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/batik/svggen/SVGTexturePaint;
0 2 1 generatorContext Lorg/apache/batik/svggen/SVGGeneratorContext;
MethodParameters:
Name Flags
generatorContext
public org.apache.batik.svggen.SVGDescriptor toSVG(org.apache.batik.ext.awt.g2d.GraphicContext);
descriptor: (Lorg/apache/batik/ext/awt/g2d/GraphicContext;)Lorg/apache/batik/svggen/SVGDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.apache.batik.svggen.SVGTexturePaint this
start local 1 // org.apache.batik.ext.awt.g2d.GraphicContext gc
0: .line 57
aload 0 /* this */
aload 1 /* gc */
invokevirtual org.apache.batik.ext.awt.g2d.GraphicContext.getPaint:()Ljava/awt/Paint;
checkcast java.awt.TexturePaint
invokevirtual org.apache.batik.svggen.SVGTexturePaint.toSVG:(Ljava/awt/TexturePaint;)Lorg/apache/batik/svggen/SVGPaintDescriptor;
areturn
end local 1 // org.apache.batik.ext.awt.g2d.GraphicContext gc
end local 0 // org.apache.batik.svggen.SVGTexturePaint this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/svggen/SVGTexturePaint;
0 1 1 gc Lorg/apache/batik/ext/awt/g2d/GraphicContext;
MethodParameters:
Name Flags
gc
public org.apache.batik.svggen.SVGPaintDescriptor toSVG(java.awt.TexturePaint);
descriptor: (Ljava/awt/TexturePaint;)Lorg/apache/batik/svggen/SVGPaintDescriptor;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=13, args_size=2
start local 0 // org.apache.batik.svggen.SVGTexturePaint this
start local 1 // java.awt.TexturePaint texture
0: .line 68
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.descMap:Ljava/util/Map;
aload 1 /* texture */
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast org.apache.batik.svggen.SVGPaintDescriptor
astore 2 /* patternDesc */
start local 2 // org.apache.batik.svggen.SVGPaintDescriptor patternDesc
1: .line 69
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.domFactory:Lorg/w3c/dom/Document;
astore 3 /* domFactory */
start local 3 // org.w3c.dom.Document domFactory
2: .line 71
aload 2 /* patternDesc */
ifnonnull 71
3: .line 72
aload 1 /* texture */
invokevirtual java.awt.TexturePaint.getAnchorRect:()Ljava/awt/geom/Rectangle2D;
astore 4 /* anchorRect */
start local 4 // java.awt.geom.Rectangle2D anchorRect
4: .line 73
aload 3 /* domFactory */
ldc "http://www.w3.org/2000/svg"
5: .line 74
ldc "pattern"
6: .line 73
invokeinterface org.w3c.dom.Document.createElementNS:(Ljava/lang/String;Ljava/lang/String;)Lorg/w3c/dom/Element;
astore 5 /* patternDef */
start local 5 // org.w3c.dom.Element patternDef
7: .line 75
aload 5 /* patternDef */
aconst_null
ldc "patternUnits"
8: .line 76
ldc "userSpaceOnUse"
9: .line 75
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
10: .line 81
aload 5 /* patternDef */
aconst_null
ldc "x"
11: .line 82
aload 0 /* this */
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getX:()D
invokevirtual org.apache.batik.svggen.SVGTexturePaint.doubleString:(D)Ljava/lang/String;
12: .line 81
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
13: .line 83
aload 5 /* patternDef */
aconst_null
ldc "y"
14: .line 84
aload 0 /* this */
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getY:()D
invokevirtual org.apache.batik.svggen.SVGTexturePaint.doubleString:(D)Ljava/lang/String;
15: .line 83
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
16: .line 85
aload 5 /* patternDef */
aconst_null
ldc "width"
17: .line 86
aload 0 /* this */
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
invokevirtual org.apache.batik.svggen.SVGTexturePaint.doubleString:(D)Ljava/lang/String;
18: .line 85
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
19: .line 87
aload 5 /* patternDef */
aconst_null
ldc "height"
20: .line 88
aload 0 /* this */
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
invokevirtual org.apache.batik.svggen.SVGTexturePaint.doubleString:(D)Ljava/lang/String;
21: .line 87
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
22: .line 93
aload 1 /* texture */
invokevirtual java.awt.TexturePaint.getImage:()Ljava/awt/image/BufferedImage;
astore 6 /* textureImage */
start local 6 // java.awt.image.BufferedImage textureImage
23: .line 97
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
ifle 46
24: .line 98
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
ifle 46
25: .line 101
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
i2d
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dcmpl
ifne 27
26: .line 102
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
i2d
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dcmpl
ifeq 46
27: .line 105
StackMap locals: org.apache.batik.svggen.SVGTexturePaint java.awt.TexturePaint org.apache.batik.svggen.SVGPaintDescriptor org.w3c.dom.Document java.awt.geom.Rectangle2D org.w3c.dom.Element java.awt.image.BufferedImage
StackMap stack:
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dconst_0
dcmpl
ifle 46
28: .line 106
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dconst_0
dcmpl
ifle 46
29: .line 108
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
i2d
ddiv
30: .line 107
dstore 7 /* scaleX */
start local 7 // double scaleX
31: .line 110
aload 4 /* anchorRect */
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
i2d
ddiv
32: .line 109
dstore 9 /* scaleY */
start local 9 // double scaleY
33: .line 112
new java.awt.image.BufferedImage
dup
dload 7 /* scaleX */
34: .line 113
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
i2d
dmul
d2i
35: .line 114
dload 9 /* scaleY */
36: .line 115
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
i2d
37: .line 114
dmul
d2i
38: .line 116
iconst_2
39: .line 112
invokespecial java.awt.image.BufferedImage.<init>:(III)V
40: .line 111
astore 11 /* newImage */
start local 11 // java.awt.image.BufferedImage newImage
41: .line 118
aload 11 /* newImage */
invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
astore 12 /* g */
start local 12 // java.awt.Graphics2D g
42: .line 119
aload 12 /* g */
dload 7 /* scaleX */
dload 9 /* scaleY */
invokevirtual java.awt.Graphics2D.scale:(DD)V
43: .line 120
aload 12 /* g */
aload 6 /* textureImage */
iconst_0
iconst_0
aconst_null
invokevirtual java.awt.Graphics2D.drawImage:(Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
pop
44: .line 121
aload 12 /* g */
invokevirtual java.awt.Graphics2D.dispose:()V
45: .line 123
aload 11 /* newImage */
astore 6 /* textureImage */
end local 12 // java.awt.Graphics2D g
end local 11 // java.awt.image.BufferedImage newImage
end local 9 // double scaleY
end local 7 // double scaleX
46: .line 133
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.genericImageHandler:Lorg/apache/batik/svggen/GenericImageHandler;
47: .line 134
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
48: .line 133
invokeinterface org.apache.batik.svggen.GenericImageHandler.createElement:(Lorg/apache/batik/svggen/SVGGeneratorContext;)Lorg/w3c/dom/Element;
49: .line 132
astore 7 /* patternContent */
start local 7 // org.w3c.dom.Element patternContent
50: .line 136
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.genericImageHandler:Lorg/apache/batik/svggen/GenericImageHandler;
51: .line 137
aload 6 /* textureImage */
52: .line 138
aload 7 /* patternContent */
53: .line 139
iconst_0
54: .line 140
iconst_0
55: .line 141
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
56: .line 142
aload 6 /* textureImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
57: .line 143
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
58: .line 136
invokeinterface org.apache.batik.svggen.GenericImageHandler.handleImage:(Ljava/awt/image/RenderedImage;Lorg/w3c/dom/Element;IIIILorg/apache/batik/svggen/SVGGeneratorContext;)Ljava/awt/geom/AffineTransform;
pop
59: .line 145
aload 5 /* patternDef */
aload 7 /* patternContent */
invokeinterface org.w3c.dom.Element.appendChild:(Lorg/w3c/dom/Node;)Lorg/w3c/dom/Node;
pop
60: .line 147
aload 5 /* patternDef */
aconst_null
ldc "id"
61: .line 148
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.generatorContext:Lorg/apache/batik/svggen/SVGGeneratorContext;
getfield org.apache.batik.svggen.SVGGeneratorContext.idGenerator:Lorg/apache/batik/svggen/SVGIDGenerator;
62: .line 149
ldc "pattern"
invokevirtual org.apache.batik.svggen.SVGIDGenerator.generateID:(Ljava/lang/String;)Ljava/lang/String;
63: .line 147
invokeinterface org.w3c.dom.Element.setAttributeNS:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
64: .line 155
new java.lang.StringBuilder
dup
ldc "url(#"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
65: .line 157
aload 5 /* patternDef */
aconst_null
ldc "id"
invokeinterface org.w3c.dom.Element.getAttributeNS:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
66: .line 158
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
67: .line 155
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 8 /* patternAttrBuf */
start local 8 // java.lang.String patternAttrBuf
68: .line 159
new org.apache.batik.svggen.SVGPaintDescriptor
dup
aload 8 /* patternAttrBuf */
ldc "1"
aload 5 /* patternDef */
invokespecial org.apache.batik.svggen.SVGPaintDescriptor.<init>:(Ljava/lang/String;Ljava/lang/String;Lorg/w3c/dom/Element;)V
astore 2 /* patternDesc */
69: .line 161
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.descMap:Ljava/util/Map;
aload 1 /* texture */
aload 2 /* patternDesc */
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
70: .line 162
aload 0 /* this */
getfield org.apache.batik.svggen.SVGTexturePaint.defSet:Ljava/util/List;
aload 5 /* patternDef */
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 // java.lang.String patternAttrBuf
end local 7 // org.w3c.dom.Element patternContent
end local 6 // java.awt.image.BufferedImage textureImage
end local 5 // org.w3c.dom.Element patternDef
end local 4 // java.awt.geom.Rectangle2D anchorRect
71: .line 165
StackMap locals:
StackMap stack:
aload 2 /* patternDesc */
areturn
end local 3 // org.w3c.dom.Document domFactory
end local 2 // org.apache.batik.svggen.SVGPaintDescriptor patternDesc
end local 1 // java.awt.TexturePaint texture
end local 0 // org.apache.batik.svggen.SVGTexturePaint this
LocalVariableTable:
Start End Slot Name Signature
0 72 0 this Lorg/apache/batik/svggen/SVGTexturePaint;
0 72 1 texture Ljava/awt/TexturePaint;
1 72 2 patternDesc Lorg/apache/batik/svggen/SVGPaintDescriptor;
2 72 3 domFactory Lorg/w3c/dom/Document;
4 71 4 anchorRect Ljava/awt/geom/Rectangle2D;
7 71 5 patternDef Lorg/w3c/dom/Element;
23 71 6 textureImage Ljava/awt/image/BufferedImage;
31 46 7 scaleX D
33 46 9 scaleY D
41 46 11 newImage Ljava/awt/image/BufferedImage;
42 46 12 g Ljava/awt/Graphics2D;
50 71 7 patternContent Lorg/w3c/dom/Element;
68 71 8 patternAttrBuf Ljava/lang/String;
MethodParameters:
Name Flags
texture
}
SourceFile: "SVGTexturePaint.java"