public final class org.apache.batik.gvt.font.SVGGVTGlyphVector implements org.apache.batik.gvt.font.GVTGlyphVector
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.batik.gvt.font.SVGGVTGlyphVector
super_class: java.lang.Object
{
public static final java.text.AttributedCharacterIterator$Attribute PAINT_INFO;
descriptor: Ljava/text/AttributedCharacterIterator$Attribute;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
private org.apache.batik.gvt.font.GVTFont font;
descriptor: Lorg/apache/batik/gvt/font/GVTFont;
flags: (0x0002) ACC_PRIVATE
private org.apache.batik.gvt.font.Glyph[] glyphs;
descriptor: [Lorg/apache/batik/gvt/font/Glyph;
flags: (0x0002) ACC_PRIVATE
private java.awt.font.FontRenderContext frc;
descriptor: Ljava/awt/font/FontRenderContext;
flags: (0x0002) ACC_PRIVATE
private java.awt.geom.GeneralPath outline;
descriptor: Ljava/awt/geom/GeneralPath;
flags: (0x0002) ACC_PRIVATE
private java.awt.geom.Rectangle2D logicalBounds;
descriptor: Ljava/awt/geom/Rectangle2D;
flags: (0x0002) ACC_PRIVATE
private java.awt.geom.Rectangle2D bounds2D;
descriptor: Ljava/awt/geom/Rectangle2D;
flags: (0x0002) ACC_PRIVATE
private java.awt.Shape[] glyphLogicalBounds;
descriptor: [Ljava/awt/Shape;
flags: (0x0002) ACC_PRIVATE
private boolean[] glyphVisible;
descriptor: [Z
flags: (0x0002) ACC_PRIVATE
private java.awt.geom.Point2D endPos;
descriptor: Ljava/awt/geom/Point2D;
flags: (0x0002) ACC_PRIVATE
private org.apache.batik.gvt.text.TextPaintInfo cacheTPI;
descriptor: Lorg/apache/batik/gvt/text/TextPaintInfo;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: getstatic org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute.PAINT_INFO:Lorg/apache/batik/gvt/text/GVTAttributedCharacterIterator$TextAttribute;
1: putstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
2: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(org.apache.batik.gvt.font.GVTFont, org.apache.batik.gvt.font.Glyph[], java.awt.font.FontRenderContext);
descriptor: (Lorg/apache/batik/gvt/font/GVTFont;[Lorg/apache/batik/gvt/font/Glyph;Ljava/awt/font/FontRenderContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
2: aload 0
aload 2
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
3: aload 0
aload 3
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
4: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
5: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
6: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
7: aload 0
aload 2
arraylength
anewarray java.awt.Shape
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
8: aload 0
aload 2
arraylength
newarray 4
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
9: iconst_0
istore 4
start local 4 10: goto 13
11: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector org.apache.batik.gvt.font.GVTFont org.apache.batik.gvt.font.Glyph[] java.awt.font.FontRenderContext int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 4
iconst_1
bastore
12: iinc 4 1
StackMap locals:
StackMap stack:
13: iload 4
aload 2
arraylength
if_icmplt 11
end local 4 14: aload 0
aload 2
aload 2
arraylength
iconst_1
isub
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
15: aload 0
new java.awt.geom.Point2D$Float
dup
16: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
invokevirtual java.awt.geom.Point2D.getX:()D
aload 2
aload 2
arraylength
iconst_1
isub
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
f2d
dadd
d2f
17: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
invokevirtual java.awt.geom.Point2D.getY:()D
d2f
invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
18: putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
19: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 20 1 font Lorg/apache/batik/gvt/font/GVTFont;
0 20 2 glyphs [Lorg/apache/batik/gvt/font/Glyph;
0 20 3 frc Ljava/awt/font/FontRenderContext;
10 14 4 i I
MethodParameters:
Name Flags
font
glyphs
frc
public org.apache.batik.gvt.font.GVTFont getFont();
descriptor: ()Lorg/apache/batik/gvt/font/GVTFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
public java.awt.font.FontRenderContext getFontRenderContext();
descriptor: ()Ljava/awt/font/FontRenderContext;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
public int getGlyphCode(int);
descriptor: (I)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 5
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc " is out of bounds, should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 6 1 glyphIndex I
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
glyphIndex
public int[] getGlyphCodes(int, int, int[]);
descriptor: (II[I)[I
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifge 4
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "numEntries argument value, "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", is illegal. It must be > 0."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iload 1
ifge 9
5: new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "beginGlyphIndex "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
6: ldc " is out of bounds, should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
iload 1
iload 2
iadd
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmple 14
10: new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "beginGlyphIndex + numEntries ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "+"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
12: ldc ") exceeds the number of glpyhs in this GlyphVector"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 3
ifnonnull 16
15: iload 2
newarray 10
astore 3
16: StackMap locals:
StackMap stack:
iload 1
istore 4
start local 4 17: goto 20
18: StackMap locals: int
StackMap stack:
aload 3
iload 4
iload 1
isub
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 4
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
iastore
19: iinc 4 1
StackMap locals:
StackMap stack:
20: iload 4
iload 1
iload 2
iadd
if_icmplt 18
end local 4 21: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 22 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 22 1 beginGlyphIndex I
0 22 2 numEntries I
0 22 3 codeReturn [I
17 21 4 i I
Exceptions:
throws java.lang.IndexOutOfBoundsException, java.lang.IllegalArgumentException
MethodParameters:
Name Flags
beginGlyphIndex
numEntries
codeReturn
public java.awt.font.GlyphJustificationInfo getGlyphJustificationInfo(int);
descriptor: (I)Ljava/awt/font/GlyphJustificationInfo;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 4
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 5 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public java.awt.Shape getGlyphLogicalBounds(int);
descriptor: (I)Ljava/awt/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 1
aaload
ifnonnull 2
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 1
baload
ifeq 2
1: aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.computeGlyphLogicalBounds:()V
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 1
aaload
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 3 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
private void computeGlyphLogicalBounds();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=12, locals=30, args_size=1
start local 0 0: fconst_0
fstore 1
start local 1 1: fconst_0
fstore 2
start local 2 2: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
ifnull 8
3: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
ldc "By"
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.frc:Ljava/awt/font/FontRenderContext;
invokeinterface org.apache.batik.gvt.font.GVTFont.getLineMetrics:(Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Lorg/apache/batik/gvt/font/GVTLineMetrics;
astore 3
start local 3 4: aload 3
invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getAscent:()F
fstore 1
5: aload 3
invokevirtual org.apache.batik.gvt.font.GVTLineMetrics.getDescent:()F
fstore 2
6: fload 2
fconst_0
fcmpg
ifge 8
7: fload 2
fneg
fstore 2
end local 3 8: StackMap locals: float float
StackMap stack:
fload 1
fconst_0
fcmpl
ifne 24
9: fconst_0
fstore 3
start local 3 10: fconst_0
fstore 4
start local 4 11: iconst_0
istore 5
start local 5 12: goto 21
13: StackMap locals: float float int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 5
baload
ifne 14
goto 20
14: StackMap locals:
StackMap stack:
aload 0
iload 5
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphMetrics:(I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
astore 6
start local 6 15: aload 6
invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 7
start local 7 16: aload 7
invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
dneg
d2f
fstore 1
17: aload 7
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
fload 1
f2d
dsub
d2f
fstore 2
18: fload 1
fload 3
fcmpl
ifle 19
fload 1
fstore 3
19: StackMap locals: org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D
StackMap stack:
fload 2
fload 4
fcmpl
ifle 20
fload 2
fstore 4
end local 7 end local 6 20: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
21: iload 5
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 13
end local 5 22: fload 3
fstore 1
23: fload 4
fstore 2
end local 4 end local 3 24: StackMap locals:
StackMap stack:
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
anewarray java.awt.Shape
astore 3
start local 3 25: aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
newarray 4
astore 4
start local 4 26: ldc -1.0
dstore 5
start local 5 27: ldc -1.0
dstore 7
start local 7 28: iconst_0
istore 9
start local 9 29: goto 87
30: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 9
baload
ifne 33
31: aload 3
iload 9
aconst_null
aastore
32: goto 86
33: StackMap locals:
StackMap stack:
aload 0
iload 9
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphTransform:(I)Ljava/awt/geom/AffineTransform;
astore 10
start local 10 34: aload 0
iload 9
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphMetrics:(I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
astore 11
start local 11 35: new java.awt.geom.Rectangle2D$Double
dup
36: dconst_0
fload 1
fneg
f2d
aload 11
invokevirtual org.apache.batik.gvt.font.GVTGlyphMetrics.getHorizontalAdvance:()F
f2d
37: fload 1
fload 2
fadd
f2d
38: invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
astore 12
start local 12 39: aload 12
invokevirtual java.awt.geom.Rectangle2D.isEmpty:()Z
ifeq 45
40: iload 9
ifle 43
41: aload 4
iload 9
aload 4
iload 9
iconst_1
isub
baload
bastore
42: goto 86
43: StackMap locals: java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D
StackMap stack:
aload 4
iload 9
iconst_1
bastore
44: goto 86
45: StackMap locals:
StackMap stack:
new java.awt.geom.Point2D$Double
dup
aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
46: aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
47: invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
astore 13
start local 13 48: new java.awt.geom.Point2D$Double
dup
aload 12
invokevirtual java.awt.geom.Rectangle2D.getMaxX:()D
49: aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
50: invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
astore 14
start local 14 51: new java.awt.geom.Point2D$Double
dup
aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
52: aload 12
invokevirtual java.awt.geom.Rectangle2D.getMaxY:()D
53: invokespecial java.awt.geom.Point2D$Double.<init>:(DD)V
astore 15
start local 15 54: aload 0
iload 9
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
astore 16
start local 16 55: aload 16
invokevirtual java.awt.geom.Point2D.getX:()D
aload 16
invokevirtual java.awt.geom.Point2D.getY:()D
56: invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
astore 17
start local 17 57: aload 10
ifnull 59
58: aload 17
aload 10
invokevirtual java.awt.geom.AffineTransform.concatenate:(Ljava/awt/geom/AffineTransform;)V
59: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform
StackMap stack:
aload 3
iload 9
60: aload 17
aload 12
invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
61: aastore
62: new java.awt.geom.Point2D$Double
dup
invokespecial java.awt.geom.Point2D$Double.<init>:()V
astore 18
start local 18 63: new java.awt.geom.Point2D$Double
dup
invokespecial java.awt.geom.Point2D$Double.<init>:()V
astore 19
start local 19 64: new java.awt.geom.Point2D$Double
dup
invokespecial java.awt.geom.Point2D$Double.<init>:()V
astore 20
start local 20 65: aload 17
aload 13
aload 18
invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
66: aload 17
aload 14
aload 19
invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
67: aload 17
aload 15
aload 20
invokevirtual java.awt.geom.AffineTransform.transform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
68: aload 18
invokevirtual java.awt.geom.Point2D.getX:()D
aload 19
invokevirtual java.awt.geom.Point2D.getX:()D
dsub
dstore 21
start local 21 69: aload 18
invokevirtual java.awt.geom.Point2D.getX:()D
aload 20
invokevirtual java.awt.geom.Point2D.getX:()D
dsub
dstore 23
start local 23 70: aload 18
invokevirtual java.awt.geom.Point2D.getY:()D
aload 19
invokevirtual java.awt.geom.Point2D.getY:()D
dsub
dstore 25
start local 25 71: aload 18
invokevirtual java.awt.geom.Point2D.getY:()D
aload 20
invokevirtual java.awt.geom.Point2D.getY:()D
dsub
dstore 27
start local 27 72: dload 21
invokestatic java.lang.Math.abs:(D)D
ldc 0.001
dcmpg
ifge 76
73: dload 27
invokestatic java.lang.Math.abs:(D)D
ldc 0.001
dcmpg
ifge 76
74: aload 4
iload 9
iconst_0
bastore
75: goto 81
StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int java.awt.geom.AffineTransform org.apache.batik.gvt.font.GVTGlyphMetrics java.awt.geom.Rectangle2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.AffineTransform java.awt.geom.Point2D java.awt.geom.Point2D java.awt.geom.Point2D double double double double
StackMap stack:
76: dload 23
invokestatic java.lang.Math.abs:(D)D
ldc 0.001
dcmpg
ifge 80
77: dload 25
invokestatic java.lang.Math.abs:(D)D
ldc 0.001
dcmpg
ifge 80
78: aload 4
iload 9
iconst_0
bastore
79: goto 81
80: StackMap locals:
StackMap stack:
aload 4
iload 9
iconst_1
bastore
81: StackMap locals:
StackMap stack:
aload 3
iload 9
aaload
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 29
start local 29 82: aload 29
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dload 5
dcmpl
ifle 84
83: aload 29
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dstore 5
84: StackMap locals: java.awt.geom.Rectangle2D
StackMap stack:
aload 29
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dload 7
dcmpl
ifle 86
85: aload 29
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dstore 7
end local 29 end local 27 end local 25 end local 23 end local 21 end local 20 end local 19 end local 18 end local 17 end local 16 end local 15 end local 14 end local 13 end local 12 end local 11 end local 10 86: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double int
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
87: iload 9
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 30
end local 9 88: new java.awt.geom.GeneralPath
dup
invokespecial java.awt.geom.GeneralPath.<init>:()V
astore 9
start local 9 89: iconst_0
istore 10
start local 10 90: goto 94
91: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double java.awt.geom.GeneralPath int
StackMap stack:
aload 3
iload 10
aaload
ifnull 93
92: aload 9
aload 3
iload 10
aaload
iconst_0
invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
93: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
94: iload 10
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 91
end local 10 95: aload 9
invokevirtual java.awt.geom.GeneralPath.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 10
start local 10 96: aload 10
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dload 7
ldc 1.5
dmul
dcmpg
ifge 122
97: iconst_0
istore 11
start local 11 98: goto 120
99: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float java.awt.Shape[] boolean[] double double java.awt.geom.GeneralPath java.awt.geom.Rectangle2D int
StackMap stack:
aload 4
iload 11
baload
ifeq 100
goto 119
100: StackMap locals:
StackMap stack:
aload 3
iload 11
aaload
ifnonnull 101
goto 119
101: StackMap locals:
StackMap stack:
aload 3
iload 11
aaload
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 12
start local 12 102: aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
dstore 13
start local 13 103: aload 12
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dstore 15
start local 15 104: iload 11
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
iconst_1
isub
if_icmpge 115
105: aload 3
iload 11
iconst_1
iadd
aaload
ifnull 115
106: aload 3
iload 11
iconst_1
iadd
aaload
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 17
start local 17 107: aload 17
invokevirtual java.awt.geom.Rectangle2D.getX:()D
dload 13
dcmpl
ifle 115
108: aload 17
invokevirtual java.awt.geom.Rectangle2D.getX:()D
dload 13
dsub
dstore 18
start local 18 109: dload 18
dload 15
ldc 1.15
dmul
dcmpg
ifge 115
dload 18
dload 15
ldc 0.85
dmul
dcmpl
ifle 115
110: dload 18
dload 15
dsub
ldc 0.5
dmul
dstore 20
start local 20 111: dload 15
dload 20
dadd
dstore 15
112: aload 17
aload 17
invokevirtual java.awt.geom.Rectangle2D.getX:()D
dload 20
dsub
aload 17
invokevirtual java.awt.geom.Rectangle2D.getY:()D
113: aload 17
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dload 20
dadd
aload 17
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
114: invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
end local 20 end local 18 end local 17 115: StackMap locals: java.awt.geom.Rectangle2D double double
StackMap stack:
aload 3
iload 11
new java.awt.geom.Rectangle2D$Double
dup
116: dload 13
aload 10
invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
117: dload 15
aload 10
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
118: aastore
end local 15 end local 13 end local 12 119: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
120: iload 11
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 99
end local 11 121: goto 147
StackMap locals:
StackMap stack:
122: aload 10
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dload 5
ldc 1.5
dmul
dcmpg
ifge 147
123: iconst_0
istore 11
start local 11 124: goto 146
125: StackMap locals: int
StackMap stack:
aload 4
iload 11
baload
ifeq 126
goto 145
126: StackMap locals:
StackMap stack:
aload 3
iload 11
aaload
ifnonnull 127
goto 145
127: StackMap locals:
StackMap stack:
aload 3
iload 11
aaload
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 12
start local 12 128: aload 12
invokevirtual java.awt.geom.Rectangle2D.getMinY:()D
dstore 13
start local 13 129: aload 12
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dstore 15
start local 15 130: iload 11
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
iconst_1
isub
if_icmpge 141
131: aload 3
iload 11
iconst_1
iadd
aaload
ifnull 141
132: aload 3
iload 11
iconst_1
iadd
aaload
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 17
start local 17 133: aload 17
invokevirtual java.awt.geom.Rectangle2D.getY:()D
dload 13
dcmpl
ifle 141
134: aload 17
invokevirtual java.awt.geom.Rectangle2D.getY:()D
dload 13
dsub
dstore 18
start local 18 135: dload 18
dload 15
ldc 1.15
dmul
dcmpg
ifge 141
dload 18
dload 15
ldc 0.85
dmul
dcmpl
ifle 141
136: dload 18
dload 15
dsub
ldc 0.5
dmul
dstore 20
start local 20 137: dload 15
dload 20
dadd
dstore 15
138: aload 17
aload 17
invokevirtual java.awt.geom.Rectangle2D.getX:()D
aload 17
invokevirtual java.awt.geom.Rectangle2D.getY:()D
dload 20
dsub
139: aload 17
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
aload 17
invokevirtual java.awt.geom.Rectangle2D.getHeight:()D
dload 20
dadd
140: invokevirtual java.awt.geom.Rectangle2D.setRect:(DDDD)V
end local 20 end local 18 end local 17 141: StackMap locals: java.awt.geom.Rectangle2D double double
StackMap stack:
aload 3
iload 11
new java.awt.geom.Rectangle2D$Double
dup
142: aload 10
invokevirtual java.awt.geom.Rectangle2D.getMinX:()D
dload 13
143: aload 10
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
dload 15
invokespecial java.awt.geom.Rectangle2D$Double.<init>:(DDDD)V
144: aastore
end local 15 end local 13 end local 12 145: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
146: iload 11
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 125
end local 11 147: StackMap locals:
StackMap stack:
aload 3
iconst_0
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iconst_0
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
148: return
end local 10 end local 9 end local 7 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 149 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
1 149 1 ascent F
2 149 2 descent F
4 8 3 lineMetrics Lorg/apache/batik/gvt/font/GVTLineMetrics;
10 24 3 maxAscent F
11 24 4 maxDescent F
12 22 5 i I
15 20 6 glyphMetrics Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
16 20 7 glyphBounds Ljava/awt/geom/Rectangle2D;
25 149 3 tempLogicalBounds [Ljava/awt/Shape;
26 149 4 rotated [Z
27 149 5 maxWidth D
28 149 7 maxHeight D
29 88 9 i I
34 86 10 glyphTransform Ljava/awt/geom/AffineTransform;
35 86 11 glyphMetrics Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
39 86 12 glyphBounds Ljava/awt/geom/Rectangle2D;
48 86 13 p1 Ljava/awt/geom/Point2D;
51 86 14 p2 Ljava/awt/geom/Point2D;
54 86 15 p3 Ljava/awt/geom/Point2D;
55 86 16 gpos Ljava/awt/geom/Point2D;
57 86 17 tr Ljava/awt/geom/AffineTransform;
63 86 18 tp1 Ljava/awt/geom/Point2D;
64 86 19 tp2 Ljava/awt/geom/Point2D;
65 86 20 tp3 Ljava/awt/geom/Point2D;
69 86 21 tdx12 D
70 86 23 tdx13 D
71 86 25 tdy12 D
72 86 27 tdy13 D
82 86 29 rectBounds Ljava/awt/geom/Rectangle2D;
89 149 9 logicalBoundsPath Ljava/awt/geom/GeneralPath;
90 95 10 i I
96 149 10 fullBounds Ljava/awt/geom/Rectangle2D;
98 121 11 i I
102 119 12 glyphBounds Ljava/awt/geom/Rectangle2D;
103 119 13 x D
104 119 15 width D
107 115 17 ngb Ljava/awt/geom/Rectangle2D;
109 115 18 nw D
111 115 20 delta D
124 147 11 i I
128 145 12 glyphBounds Ljava/awt/geom/Rectangle2D;
129 145 13 y D
130 145 15 height D
133 141 17 ngb Ljava/awt/geom/Rectangle2D;
135 141 18 nh D
137 141 20 delta D
public org.apache.batik.gvt.font.GVTGlyphMetrics getGlyphMetrics(int);
descriptor: (I)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 6
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
2: new java.lang.StringBuilder
dup
ldc "idx: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
3: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
4: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmpge 15
7: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
ifnull 15
8: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
9: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
iconst_1
iadd
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
10: invokeinterface org.apache.batik.gvt.font.GVTFont.getHKern:(II)F
fstore 2
start local 2 11: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.font:Lorg/apache/batik/gvt/font/GVTFont;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
12: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
iconst_1
iadd
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
13: invokeinterface org.apache.batik.gvt.font.GVTFont.getVKern:(II)F
fstore 3
start local 3 14: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
fload 2
fload 3
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphMetrics:(FF)Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
areturn
end local 3 end local 2 15: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphMetrics:()Lorg/apache/batik/gvt/font/GVTGlyphMetrics;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 16 1 idx I
11 15 2 hkern F
14 15 3 vkern F
MethodParameters:
Name Flags
idx
public java.awt.Shape getGlyphOutline(int);
descriptor: (I)Ljava/awt/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 4
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 5 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public java.awt.geom.Rectangle2D getGlyphCellBounds(int);
descriptor: (I)Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphLogicalBounds:(I)Ljava/awt/Shape;
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 1 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public java.awt.geom.Point2D getGlyphPosition(int);
descriptor: (I)Ljava/awt/geom/Point2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmpne 2
1: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
areturn
2: StackMap locals:
StackMap stack:
iload 1
iflt 3
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 6
3: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
4: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 7 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public float[] getGlyphPositions(int, int, float[]);
descriptor: (II[F)[F
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iload 2
ifge 4
1: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "numEntries argument value, "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
2: iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ", is illegal. It must be > 0."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
iload 1
ifge 9
5: new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "beginGlyphIndex "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
6: ldc " is out of bounds, should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
iload 1
iload 2
iadd
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
iadd
if_icmple 14
10: new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "beginGlyphIndex + numEntries ("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
11: iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 43
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
12: ldc ") exceeds the number of glpyhs in this GlyphVector"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
aload 3
ifnonnull 16
15: iload 2
iconst_2
imul
newarray 6
astore 3
16: StackMap locals:
StackMap stack:
iload 1
iload 2
iadd
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
iadd
if_icmpne 20
17: iinc 2 -1
18: aload 3
iload 2
iconst_2
imul
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
invokevirtual java.awt.geom.Point2D.getX:()D
d2f
fastore
19: aload 3
iload 2
iconst_2
imul
iconst_1
iadd
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
invokevirtual java.awt.geom.Point2D.getY:()D
d2f
fastore
20: StackMap locals:
StackMap stack:
iload 1
istore 4
start local 4 21: goto 26
22: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 4
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getPosition:()Ljava/awt/geom/Point2D;
astore 5
start local 5 23: aload 3
iload 4
iload 1
isub
iconst_2
imul
aload 5
invokevirtual java.awt.geom.Point2D.getX:()D
d2f
fastore
24: aload 3
iload 4
iload 1
isub
iconst_2
imul
iconst_1
iadd
aload 5
invokevirtual java.awt.geom.Point2D.getY:()D
d2f
fastore
end local 5 25: iinc 4 1
StackMap locals:
StackMap stack:
26: iload 4
iload 1
iload 2
iadd
if_icmplt 22
end local 4 27: aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 28 1 beginGlyphIndex I
0 28 2 numEntries I
0 28 3 positionReturn [F
21 27 4 i I
23 25 5 glyphPos Ljava/awt/geom/Point2D;
MethodParameters:
Name Flags
beginGlyphIndex
numEntries
positionReturn
public java.awt.geom.AffineTransform getGlyphTransform(int);
descriptor: (I)Ljava/awt/geom/AffineTransform;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 4
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getTransform:()Ljava/awt/geom/AffineTransform;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 5 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public java.awt.Shape getGlyphVisualBounds(int);
descriptor: (I)Ljava/awt/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 4
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 5 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public java.awt.geom.Rectangle2D getBounds2D(java.text.AttributedCharacterIterator);
descriptor: (Ljava/text/AttributedCharacterIterator;)Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.text.AttributedCharacterIterator.first:()C
pop
1: aload 1
getstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
checkcast org.apache.batik.gvt.text.TextPaintInfo
astore 2
start local 2 2: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
ifnull 5
3: aload 2
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.cacheTPI:Lorg/apache/batik/gvt/text/TextPaintInfo;
invokestatic org.apache.batik.gvt.text.TextPaintInfo.equivilent:(Lorg/apache/batik/gvt/text/TextPaintInfo;Lorg/apache/batik/gvt/text/TextPaintInfo;)Z
ifeq 5
4: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
areturn
5: StackMap locals: org.apache.batik.gvt.text.TextPaintInfo
StackMap stack:
aconst_null
astore 3
start local 3 6: aload 2
getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
ifeq 16
7: iconst_0
istore 4
start local 4 8: goto 15
9: StackMap locals: java.awt.geom.Rectangle2D int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 4
baload
ifne 10
goto 14
10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 4
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getBounds2D:()Ljava/awt/geom/Rectangle2D;
astore 5
start local 5 11: aload 5
ifnonnull 12
goto 14
12: StackMap locals: java.awt.geom.Rectangle2D
StackMap stack:
aload 3
ifnonnull 13
aload 5
astore 3
goto 14
13: StackMap locals:
StackMap stack:
aload 3
aload 5
invokevirtual java.awt.geom.Rectangle2D.add:(Ljava/awt/geom/Rectangle2D;)V
end local 5 14: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
15: iload 4
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 9
end local 4 16: StackMap locals:
StackMap stack:
aload 0
aload 3
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
17: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
ifnonnull 19
18: aload 0
new java.awt.geom.Rectangle2D$Float
dup
invokespecial java.awt.geom.Rectangle2D$Float.<init>:()V
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
19: StackMap locals:
StackMap stack:
aload 0
new org.apache.batik.gvt.text.TextPaintInfo
dup
aload 2
invokespecial org.apache.batik.gvt.text.TextPaintInfo.<init>:(Lorg/apache/batik/gvt/text/TextPaintInfo;)V
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.cacheTPI:Lorg/apache/batik/gvt/text/TextPaintInfo;
20: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 21 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 21 1 aci Ljava/text/AttributedCharacterIterator;
2 21 2 tpi Lorg/apache/batik/gvt/text/TextPaintInfo;
6 21 3 b Ljava/awt/geom/Rectangle2D;
8 16 4 i I
11 14 5 glyphBounds Ljava/awt/geom/Rectangle2D;
MethodParameters:
Name Flags
aci
public java.awt.geom.Rectangle2D getLogicalBounds();
descriptor: ()Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=1
start local 0 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
ifnonnull 10
1: new java.awt.geom.GeneralPath
dup
invokespecial java.awt.geom.GeneralPath.<init>:()V
astore 1
start local 1 2: iconst_0
istore 2
start local 2 3: goto 8
4: StackMap locals: java.awt.geom.GeneralPath int
StackMap stack:
aload 0
iload 2
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getGlyphLogicalBounds:(I)Ljava/awt/Shape;
astore 3
start local 3 5: aload 3
ifnull 7
6: aload 1
aload 3
iconst_0
invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
end local 3 7: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
8: iload 2
aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getNumGlyphs:()I
if_icmplt 4
end local 2 9: aload 0
aload 1
invokevirtual java.awt.geom.GeneralPath.getBounds2D:()Ljava/awt/geom/Rectangle2D;
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
end local 1 10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
2 10 1 logicalBoundsPath Ljava/awt/geom/GeneralPath;
3 9 2 i I
5 7 3 glyphLogicalBounds Ljava/awt/Shape;
public int getNumGlyphs();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
ifnull 2
1: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
ireturn
2: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
public java.awt.Shape getOutline();
descriptor: ()Ljava/awt/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=1
start local 0 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
ifnonnull 10
1: aload 0
new java.awt.geom.GeneralPath
dup
invokespecial java.awt.geom.GeneralPath.<init>:()V
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
2: iconst_0
istore 1
start local 1 3: goto 9
4: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 1
baload
ifeq 8
5: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getOutline:()Ljava/awt/Shape;
astore 2
start local 2 6: aload 2
ifnull 8
7: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
aload 2
iconst_0
invokevirtual java.awt.geom.GeneralPath.append:(Ljava/awt/Shape;Z)V
end local 2 8: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
9: iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmplt 4
end local 1 10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
3 10 1 i I
6 8 2 glyphOutline Ljava/awt/Shape;
public java.awt.Shape getOutline(float, float);
descriptor: (FF)Ljava/awt/Shape;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getOutline:()Ljava/awt/Shape;
astore 3
start local 3 1: fload 1
f2d
fload 2
f2d
invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
astore 4
start local 4 2: aload 4
aload 3
invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
astore 5
start local 5 3: aload 5
areturn
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 4 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 4 1 x F
0 4 2 y F
1 4 3 outline Ljava/awt/Shape;
2 4 4 tr Ljava/awt/geom/AffineTransform;
3 4 5 translatedOutline Ljava/awt/Shape;
MethodParameters:
Name Flags
x
y
public java.awt.geom.Rectangle2D getGeometricBounds();
descriptor: ()Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual org.apache.batik.gvt.font.SVGGVTGlyphVector.getOutline:()Ljava/awt/Shape;
invokeinterface java.awt.Shape.getBounds2D:()Ljava/awt/geom/Rectangle2D;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
public void performDefaultLayout();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=1
start local 0 0: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
1: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
2: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
3: fconst_0
fstore 1
start local 1 4: fconst_0
fstore 2
start local 2 5: iconst_0
istore 3
start local 3 6: goto 40
7: StackMap locals: float float int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 3
aaload
astore 4
start local 4 8: aload 4
aconst_null
invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
9: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 3
aconst_null
aastore
10: aload 4
invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
astore 5
start local 5 11: aload 5
ifnull 37
aload 5
invokevirtual java.lang.String.length:()I
ifeq 37
12: aload 5
iconst_0
invokevirtual java.lang.String.charAt:(I)C
invokestatic org.apache.batik.gvt.text.ArabicTextHandler.arabicCharTransparent:(C)Z
ifeq 37
13: iload 3
iconst_1
iadd
istore 6
start local 6 14: goto 21
15: StackMap locals: org.apache.batik.gvt.font.Glyph java.lang.String int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 6
aaload
invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
astore 5
16: aload 5
ifnull 22
aload 5
invokevirtual java.lang.String.length:()I
ifne 17
goto 22
17: StackMap locals:
StackMap stack:
aload 5
iconst_0
invokevirtual java.lang.String.charAt:(I)C
istore 7
start local 7 18: iload 7
invokestatic org.apache.batik.gvt.text.ArabicTextHandler.arabicCharTransparent:(C)Z
ifne 20
19: goto 22
end local 7 20: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
21: iload 6
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmplt 15
22: StackMap locals:
StackMap stack:
iload 6
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmpeq 37
23: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 6
aaload
astore 7
start local 7 24: fload 1
aload 7
invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
fadd
fstore 8
start local 8 25: iload 3
istore 9
start local 9 26: goto 34
27: StackMap locals: org.apache.batik.gvt.font.Glyph float int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 9
aaload
astore 4
28: aload 4
aconst_null
invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
29: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 3
aconst_null
aastore
30: aload 4
new java.awt.geom.Point2D$Float
dup
fload 8
aload 4
invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
fsub
31: fload 2
invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
32: invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
33: iinc 9 1
StackMap locals:
StackMap stack:
34: iload 9
iload 6
if_icmplt 27
end local 9 35: iload 6
istore 3
36: aload 7
astore 4
end local 8 end local 7 end local 6 37: StackMap locals: org.apache.batik.gvt.font.SVGGVTGlyphVector float float int org.apache.batik.gvt.font.Glyph java.lang.String
StackMap stack:
aload 4
new java.awt.geom.Point2D$Float
dup
fload 1
fload 2
invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
38: fload 1
aload 4
invokevirtual org.apache.batik.gvt.font.Glyph.getHorizAdvX:()F
fadd
fstore 1
end local 5 end local 4 39: iinc 3 1
StackMap locals:
StackMap stack:
40: iload 3
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmplt 7
end local 3 41: aload 0
new java.awt.geom.Point2D$Float
dup
fload 1
fload 2
invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
42: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 43 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
4 43 1 currentX F
5 43 2 currentY F
6 41 3 i I
8 39 4 g Lorg/apache/batik/gvt/font/Glyph;
11 39 5 uni Ljava/lang/String;
14 37 6 j I
18 20 7 ch C
24 37 7 bg Lorg/apache/batik/gvt/font/Glyph;
25 37 8 rEdge F
26 35 9 k I
public void setGlyphPosition(int, java.awt.geom.Point2D);
descriptor: (ILjava/awt/geom/Point2D;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmpne 3
1: aload 0
aload 2
invokevirtual java.awt.geom.Point2D.clone:()Ljava/lang/Object;
checkcast java.awt.geom.Point2D
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.endPos:Ljava/awt/geom/Point2D;
2: return
3: StackMap locals:
StackMap stack:
iload 1
iflt 4
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 7
4: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
5: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
6: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
7: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
aload 2
invokevirtual org.apache.batik.gvt.font.Glyph.setPosition:(Ljava/awt/geom/Point2D;)V
8: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 1
aconst_null
aastore
9: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
10: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
11: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
12: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 13 1 glyphIndex I
0 13 2 newPos Ljava/awt/geom/Point2D;
Exceptions:
throws java.lang.IndexOutOfBoundsException
MethodParameters:
Name Flags
glyphIndex
newPos
public void setGlyphTransform(int, java.awt.geom.AffineTransform);
descriptor: (ILjava/awt/geom/AffineTransform;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 1
iflt 1
iload 1
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 4
1: StackMap locals:
StackMap stack:
new java.lang.IndexOutOfBoundsException
dup
new java.lang.StringBuilder
dup
ldc "glyphIndex: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
2: ldc ", is out of bounds. Should be between 0 and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
bipush 46
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
3: invokespecial java.lang.IndexOutOfBoundsException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 1
aaload
aload 2
invokevirtual org.apache.batik.gvt.font.Glyph.setTransform:(Ljava/awt/geom/AffineTransform;)V
5: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 1
aconst_null
aastore
6: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
7: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
8: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
9: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 10 1 glyphIndex I
0 10 2 newTX Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
glyphIndex
newTX
public void setGlyphVisible(int, boolean);
descriptor: (IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 1
baload
if_icmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 1
iload 2
bastore
3: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.outline:Ljava/awt/geom/GeneralPath;
4: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.bounds2D:Ljava/awt/geom/Rectangle2D;
5: aload 0
aconst_null
putfield org.apache.batik.gvt.font.SVGGVTGlyphVector.logicalBounds:Ljava/awt/geom/Rectangle2D;
6: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphLogicalBounds:[Ljava/awt/Shape;
iload 1
aconst_null
aastore
7: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 8 1 glyphIndex I
0 8 2 visible Z
MethodParameters:
Name Flags
glyphIndex
visible
public boolean isGlyphVisible(int);
descriptor: (I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 1
baload
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 1 1 glyphIndex I
MethodParameters:
Name Flags
glyphIndex
public int getCharacterCount(int, int);
descriptor: (II)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iconst_0
istore 3
start local 3 1: iload 1
ifge 3
2: iconst_0
istore 1
3: StackMap locals: int
StackMap stack:
iload 2
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
if_icmple 5
4: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
iconst_1
isub
istore 2
5: StackMap locals:
StackMap stack:
iload 1
istore 4
start local 4 6: goto 14
7: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 4
aaload
astore 5
start local 5 8: aload 5
invokevirtual org.apache.batik.gvt.font.Glyph.getGlyphCode:()I
iconst_m1
if_icmpne 11
9: iinc 3 1
10: goto 13
11: StackMap locals: org.apache.batik.gvt.font.Glyph
StackMap stack:
aload 5
invokevirtual org.apache.batik.gvt.font.Glyph.getUnicode:()Ljava/lang/String;
astore 6
start local 6 12: iload 3
aload 6
invokevirtual java.lang.String.length:()I
iadd
istore 3
end local 6 end local 5 13: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
iload 2
if_icmple 7
end local 4 15: iload 3
ireturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 16 1 startGlyphIndex I
0 16 2 endGlyphIndex I
1 16 3 numChars I
6 15 4 i I
8 13 5 glyph Lorg/apache/batik/gvt/font/Glyph;
12 13 6 glyphUnicode Ljava/lang/String;
MethodParameters:
Name Flags
startGlyphIndex
endGlyphIndex
public boolean isReversed();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
public void maybeReverse(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=0, locals=2, args_size=2
start local 0 start local 1 0: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 1 1 mirror Z
MethodParameters:
Name Flags
mirror
public void draw(java.awt.Graphics2D, java.text.AttributedCharacterIterator);
descriptor: (Ljava/awt/Graphics2D;Ljava/text/AttributedCharacterIterator;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokeinterface java.text.AttributedCharacterIterator.first:()C
pop
1: aload 2
getstatic org.apache.batik.gvt.font.SVGGVTGlyphVector.PAINT_INFO:Ljava/text/AttributedCharacterIterator$Attribute;
invokeinterface java.text.AttributedCharacterIterator.getAttribute:(Ljava/text/AttributedCharacterIterator$Attribute;)Ljava/lang/Object;
checkcast org.apache.batik.gvt.text.TextPaintInfo
astore 3
start local 3 2: aload 3
getfield org.apache.batik.gvt.text.TextPaintInfo.visible:Z
ifne 3
return
3: StackMap locals: org.apache.batik.gvt.text.TextPaintInfo
StackMap stack:
iconst_0
istore 4
start local 4 4: goto 8
5: StackMap locals: int
StackMap stack:
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphVisible:[Z
iload 4
baload
ifeq 7
6: aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
iload 4
aaload
aload 1
invokevirtual org.apache.batik.gvt.font.Glyph.draw:(Ljava/awt/Graphics2D;)V
7: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
8: iload 4
aload 0
getfield org.apache.batik.gvt.font.SVGGVTGlyphVector.glyphs:[Lorg/apache/batik/gvt/font/Glyph;
arraylength
if_icmplt 5
end local 4 9: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/apache/batik/gvt/font/SVGGVTGlyphVector;
0 10 1 graphics2D Ljava/awt/Graphics2D;
0 10 2 aci Ljava/text/AttributedCharacterIterator;
2 10 3 tpi Lorg/apache/batik/gvt/text/TextPaintInfo;
4 9 4 i I
MethodParameters:
Name Flags
graphics2D
aci
}
SourceFile: "SVGGVTGlyphVector.java"
InnerClasses:
public Double = java.awt.geom.Point2D$Double of java.awt.geom.Point2D
public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D
public Double = java.awt.geom.Rectangle2D$Double of java.awt.geom.Rectangle2D
public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D
public Attribute = java.text.AttributedCharacterIterator$Attribute of java.text.AttributedCharacterIterator
public TextAttribute = org.apache.batik.gvt.text.GVTAttributedCharacterIterator$TextAttribute of org.apache.batik.gvt.text.GVTAttributedCharacterIterator