public abstract class sun.print.PathGraphics extends sun.print.ProxyGraphics2D
minor version: 0
major version: 59
flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
this_class: sun.print.PathGraphics
super_class: sun.print.ProxyGraphics2D
{
private java.awt.print.Printable mPainter;
descriptor: Ljava/awt/print/Printable;
flags: (0x0002) ACC_PRIVATE
private java.awt.print.PageFormat mPageFormat;
descriptor: Ljava/awt/print/PageFormat;
flags: (0x0002) ACC_PRIVATE
private int mPageIndex;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean mCanRedraw;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
protected boolean printingGlyphVector;
descriptor: Z
flags: (0x0004) ACC_PROTECTED
protected static java.lang.ref.SoftReference<java.util.Hashtable<sun.font.Font2DHandle, java.lang.Object>> fontMapRef;
descriptor: Ljava/lang/ref/SoftReference;
flags: (0x000c) ACC_PROTECTED, ACC_STATIC
Signature: Ljava/lang/ref/SoftReference<Ljava/util/Hashtable<Lsun/font/Font2DHandle;Ljava/lang/Object;>;>;
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=3, locals=0, args_size=0
0: .line 87
ldc Lsun/print/PathGraphics;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic sun.print.PathGraphics.$assertionsDisabled:Z
3: .line 656
new java.lang.ref.SoftReference
dup
aconst_null
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
putstatic sun.print.PathGraphics.fontMapRef:Ljava/lang/ref/SoftReference;
return
LocalVariableTable:
Start End Slot Name Signature
protected void <init>(java.awt.Graphics2D, java.awt.print.PrinterJob, java.awt.print.Printable, java.awt.print.PageFormat, int, boolean);
descriptor: (Ljava/awt/Graphics2D;Ljava/awt/print/PrinterJob;Ljava/awt/print/Printable;Ljava/awt/print/PageFormat;IZ)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Graphics2D graphics
start local 2 // java.awt.print.PrinterJob printerJob
start local 3 // java.awt.print.Printable painter
start local 4 // java.awt.print.PageFormat pageFormat
start local 5 // int pageIndex
start local 6 // boolean canRedraw
0: .line 98
aload 0 /* this */
aload 1 /* graphics */
aload 2 /* printerJob */
invokespecial sun.print.ProxyGraphics2D.<init>:(Ljava/awt/Graphics2D;Ljava/awt/print/PrinterJob;)V
1: .line 100
aload 0 /* this */
aload 3 /* painter */
putfield sun.print.PathGraphics.mPainter:Ljava/awt/print/Printable;
2: .line 101
aload 0 /* this */
aload 4 /* pageFormat */
putfield sun.print.PathGraphics.mPageFormat:Ljava/awt/print/PageFormat;
3: .line 102
aload 0 /* this */
iload 5 /* pageIndex */
putfield sun.print.PathGraphics.mPageIndex:I
4: .line 103
aload 0 /* this */
iload 6 /* canRedraw */
putfield sun.print.PathGraphics.mCanRedraw:Z
5: .line 104
return
end local 6 // boolean canRedraw
end local 5 // int pageIndex
end local 4 // java.awt.print.PageFormat pageFormat
end local 3 // java.awt.print.Printable painter
end local 2 // java.awt.print.PrinterJob printerJob
end local 1 // java.awt.Graphics2D graphics
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/print/PathGraphics;
0 6 1 graphics Ljava/awt/Graphics2D;
0 6 2 printerJob Ljava/awt/print/PrinterJob;
0 6 3 painter Ljava/awt/print/Printable;
0 6 4 pageFormat Ljava/awt/print/PageFormat;
0 6 5 pageIndex I
0 6 6 canRedraw Z
MethodParameters:
Name Flags
graphics
printerJob
painter
pageFormat
pageIndex
canRedraw
protected java.awt.print.Printable getPrintable();
descriptor: ()Ljava/awt/print/Printable;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.print.PathGraphics this
0: .line 111
aload 0 /* this */
getfield sun.print.PathGraphics.mPainter:Ljava/awt/print/Printable;
areturn
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
protected java.awt.print.PageFormat getPageFormat();
descriptor: ()Ljava/awt/print/PageFormat;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.print.PathGraphics this
0: .line 119
aload 0 /* this */
getfield sun.print.PathGraphics.mPageFormat:Ljava/awt/print/PageFormat;
areturn
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
protected int getPageIndex();
descriptor: ()I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.print.PathGraphics this
0: .line 126
aload 0 /* this */
getfield sun.print.PathGraphics.mPageIndex:I
ireturn
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
public boolean canDoRedraws();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.print.PathGraphics this
0: .line 137
aload 0 /* this */
getfield sun.print.PathGraphics.mCanRedraw:Z
ireturn
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
public abstract void redrawRegion(java.awt.geom.Rectangle2D, double, double, java.awt.Shape, java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/geom/Rectangle2D;DDLjava/awt/Shape;Ljava/awt/geom/AffineTransform;)V
flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
Exceptions:
throws java.awt.print.PrinterException
MethodParameters:
Name Flags
region
scaleX
scaleY
clip
devTransform
public void drawLine(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x1
start local 2 // int y1
start local 3 // int x2
start local 4 // int y2
0: .line 161
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getPaint:()Ljava/awt/Paint;
astore 5 /* paint */
start local 5 // java.awt.Paint paint
1: .line 164
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
astore 6 /* deviceTransform */
start local 6 // java.awt.geom.AffineTransform deviceTransform
2: .line 165
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
ifnull 4
3: .line 166
aload 0 /* this */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
aload 6 /* deviceTransform */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
invokevirtual sun.print.PathGraphics.deviceClip:(Ljava/awt/geom/PathIterator;)V
4: .line 169
StackMap locals: java.awt.Paint java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
iload 1 /* x1 */
iload 2 /* y1 */
iload 3 /* x2 */
iload 4 /* y2 */
aload 5 /* paint */
checkcast java.awt.Color
invokevirtual sun.print.PathGraphics.deviceDrawLine:(IIIILjava/awt/Color;)V
end local 6 // java.awt.geom.AffineTransform deviceTransform
5: .line 171
goto 8
StackMap locals: sun.print.PathGraphics int int int int java.awt.Paint
StackMap stack: java.lang.ClassCastException
6: pop
7: .line 172
new java.lang.IllegalArgumentException
dup
ldc "Expected a Color instance"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: .line 174
StackMap locals:
StackMap stack:
return
end local 5 // java.awt.Paint paint
end local 4 // int y2
end local 3 // int x2
end local 2 // int y1
end local 1 // int x1
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/print/PathGraphics;
0 9 1 x1 I
0 9 2 y1 I
0 9 3 x2 I
0 9 4 y2 I
1 9 5 paint Ljava/awt/Paint;
2 5 6 deviceTransform Ljava/awt/geom/AffineTransform;
Exception table:
from to target type
1 5 6 Class java.lang.ClassCastException
MethodParameters:
Name Flags
x1
y1
x2
y2
public void drawRect(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
0: .line 195
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getPaint:()Ljava/awt/Paint;
astore 5 /* paint */
start local 5 // java.awt.Paint paint
1: .line 198
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
astore 6 /* deviceTransform */
start local 6 // java.awt.geom.AffineTransform deviceTransform
2: .line 199
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
ifnull 4
3: .line 200
aload 0 /* this */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
aload 6 /* deviceTransform */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
invokevirtual sun.print.PathGraphics.deviceClip:(Ljava/awt/geom/PathIterator;)V
4: .line 203
StackMap locals: java.awt.Paint java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
iload 1 /* x */
iload 2 /* y */
iload 3 /* width */
iload 4 /* height */
aload 5 /* paint */
checkcast java.awt.Color
invokevirtual sun.print.PathGraphics.deviceFrameRect:(IIIILjava/awt/Color;)V
end local 6 // java.awt.geom.AffineTransform deviceTransform
5: .line 205
goto 8
StackMap locals: sun.print.PathGraphics int int int int java.awt.Paint
StackMap stack: java.lang.ClassCastException
6: pop
7: .line 206
new java.lang.IllegalArgumentException
dup
ldc "Expected a Color instance"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: .line 209
StackMap locals:
StackMap stack:
return
end local 5 // java.awt.Paint paint
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/print/PathGraphics;
0 9 1 x I
0 9 2 y I
0 9 3 width I
0 9 4 height I
1 9 5 paint Ljava/awt/Paint;
2 5 6 deviceTransform Ljava/awt/geom/AffineTransform;
Exception table:
from to target type
1 5 6 Class java.lang.ClassCastException
MethodParameters:
Name Flags
x
y
width
height
public void fillRect(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
0: .line 232
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getPaint:()Ljava/awt/Paint;
astore 5 /* paint */
start local 5 // java.awt.Paint paint
1: .line 235
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
astore 6 /* deviceTransform */
start local 6 // java.awt.geom.AffineTransform deviceTransform
2: .line 236
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
ifnull 4
3: .line 237
aload 0 /* this */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
aload 6 /* deviceTransform */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
invokevirtual sun.print.PathGraphics.deviceClip:(Ljava/awt/geom/PathIterator;)V
4: .line 240
StackMap locals: java.awt.Paint java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
iload 1 /* x */
iload 2 /* y */
iload 3 /* width */
iload 4 /* height */
aload 5 /* paint */
checkcast java.awt.Color
invokevirtual sun.print.PathGraphics.deviceFillRect:(IIIILjava/awt/Color;)V
end local 6 // java.awt.geom.AffineTransform deviceTransform
5: .line 242
goto 8
StackMap locals: sun.print.PathGraphics int int int int java.awt.Paint
StackMap stack: java.lang.ClassCastException
6: pop
7: .line 243
new java.lang.IllegalArgumentException
dup
ldc "Expected a Color instance"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: .line 245
StackMap locals:
StackMap stack:
return
end local 5 // java.awt.Paint paint
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/print/PathGraphics;
0 9 1 x I
0 9 2 y I
0 9 3 width I
0 9 4 height I
1 9 5 paint Ljava/awt/Paint;
2 5 6 deviceTransform Ljava/awt/geom/AffineTransform;
Exception table:
from to target type
1 5 6 Class java.lang.ClassCastException
MethodParameters:
Name Flags
x
y
width
height
public void clearRect(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
0: .line 268
aload 0 /* this */
new java.awt.geom.Rectangle2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
iload 3 /* width */
i2f
iload 4 /* height */
i2f
invokespecial java.awt.geom.Rectangle2D$Float.<init>:(FFFF)V
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getBackground:()Ljava/awt/Color;
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;Ljava/awt/Color;)V
1: .line 269
return
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 x I
0 2 2 y I
0 2 3 width I
0 2 4 height I
MethodParameters:
Name Flags
x
y
width
height
public void drawRoundRect(int, int, int, int, int, int);
descriptor: (IIIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
start local 5 // int arcWidth
start local 6 // int arcHeight
0: .line 290
aload 0 /* this */
new java.awt.geom.RoundRectangle2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
1: .line 291
iload 3 /* width */
i2f
iload 4 /* height */
i2f
2: .line 292
iload 5 /* arcWidth */
i2f
iload 6 /* arcHeight */
i2f
invokespecial java.awt.geom.RoundRectangle2D$Float.<init>:(FFFFFF)V
3: .line 290
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
4: .line 293
return
end local 6 // int arcHeight
end local 5 // int arcWidth
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 x I
0 5 2 y I
0 5 3 width I
0 5 4 height I
0 5 5 arcWidth I
0 5 6 arcHeight I
MethodParameters:
Name Flags
x
y
width
height
arcWidth
arcHeight
public void fillRoundRect(int, int, int, int, int, int);
descriptor: (IIIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
start local 5 // int arcWidth
start local 6 // int arcHeight
0: .line 315
aload 0 /* this */
new java.awt.geom.RoundRectangle2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
1: .line 316
iload 3 /* width */
i2f
iload 4 /* height */
i2f
2: .line 317
iload 5 /* arcWidth */
i2f
iload 6 /* arcHeight */
i2f
invokespecial java.awt.geom.RoundRectangle2D$Float.<init>:(FFFFFF)V
3: .line 315
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
4: .line 318
return
end local 6 // int arcHeight
end local 5 // int arcWidth
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 x I
0 5 2 y I
0 5 3 width I
0 5 4 height I
0 5 5 arcWidth I
0 5 6 arcHeight I
MethodParameters:
Name Flags
x
y
width
height
arcWidth
arcHeight
public void drawOval(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
0: .line 339
aload 0 /* this */
new java.awt.geom.Ellipse2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
iload 3 /* width */
i2f
iload 4 /* height */
i2f
invokespecial java.awt.geom.Ellipse2D$Float.<init>:(FFFF)V
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
1: .line 340
return
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 x I
0 2 2 y I
0 2 3 width I
0 2 4 height I
MethodParameters:
Name Flags
x
y
width
height
public void fillOval(int, int, int, int);
descriptor: (IIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=5, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
0: .line 355
aload 0 /* this */
new java.awt.geom.Ellipse2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
iload 3 /* width */
i2f
iload 4 /* height */
i2f
invokespecial java.awt.geom.Ellipse2D$Float.<init>:(FFFF)V
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
1: .line 356
return
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 x I
0 2 2 y I
0 2 3 width I
0 2 4 height I
MethodParameters:
Name Flags
x
y
width
height
public void drawArc(int, int, int, int, int, int);
descriptor: (IIIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
start local 5 // int startAngle
start local 6 // int arcAngle
0: .line 397
aload 0 /* this */
new java.awt.geom.Arc2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
iload 3 /* width */
i2f
iload 4 /* height */
i2f
1: .line 398
iload 5 /* startAngle */
i2f
iload 6 /* arcAngle */
i2f
2: .line 399
iconst_0
invokespecial java.awt.geom.Arc2D$Float.<init>:(FFFFFFI)V
3: .line 397
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
4: .line 400
return
end local 6 // int arcAngle
end local 5 // int startAngle
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 x I
0 5 2 y I
0 5 3 width I
0 5 4 height I
0 5 5 startAngle I
0 5 6 arcAngle I
MethodParameters:
Name Flags
x
y
width
height
startAngle
arcAngle
public void fillArc(int, int, int, int, int, int);
descriptor: (IIIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // int x
start local 2 // int y
start local 3 // int width
start local 4 // int height
start local 5 // int startAngle
start local 6 // int arcAngle
0: .line 442
aload 0 /* this */
new java.awt.geom.Arc2D$Float
dup
iload 1 /* x */
i2f
iload 2 /* y */
i2f
iload 3 /* width */
i2f
iload 4 /* height */
i2f
1: .line 443
iload 5 /* startAngle */
i2f
iload 6 /* arcAngle */
i2f
2: .line 444
iconst_2
invokespecial java.awt.geom.Arc2D$Float.<init>:(FFFFFFI)V
3: .line 442
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
4: .line 445
return
end local 6 // int arcAngle
end local 5 // int startAngle
end local 4 // int height
end local 3 // int width
end local 2 // int y
end local 1 // int x
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 x I
0 5 2 y I
0 5 3 width I
0 5 4 height I
0 5 5 startAngle I
0 5 6 arcAngle I
MethodParameters:
Name Flags
x
y
width
height
startAngle
arcAngle
public void drawPolyline(int[], int[], int);
descriptor: ([I[II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // int[] xPoints
start local 2 // int[] yPoints
start local 3 // int nPoints
0: .line 462
iload 3 /* nPoints */
iconst_2
if_icmpne 5
1: .line 463
aload 0 /* this */
new java.awt.geom.Line2D$Float
dup
aload 1 /* xPoints */
iconst_0
iaload
i2f
aload 2 /* yPoints */
iconst_0
iaload
i2f
2: .line 464
aload 1 /* xPoints */
iconst_1
iaload
i2f
aload 2 /* yPoints */
iconst_1
iaload
i2f
invokespecial java.awt.geom.Line2D$Float.<init>:(FFFF)V
3: .line 463
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
4: .line 465
goto 14
StackMap locals:
StackMap stack:
5: iload 3 /* nPoints */
iconst_2
if_icmple 14
6: .line 466
new java.awt.geom.Path2D$Float
dup
iconst_0
iload 3 /* nPoints */
invokespecial java.awt.geom.Path2D$Float.<init>:(II)V
astore 4 /* path */
start local 4 // java.awt.geom.Path2D path
7: .line 467
aload 4 /* path */
aload 1 /* xPoints */
iconst_0
iaload
i2d
aload 2 /* yPoints */
iconst_0
iaload
i2d
invokevirtual java.awt.geom.Path2D.moveTo:(DD)V
8: .line 468
iconst_1
istore 5 /* i */
start local 5 // int i
9: goto 12
10: .line 469
StackMap locals: java.awt.geom.Path2D int
StackMap stack:
aload 4 /* path */
aload 1 /* xPoints */
iload 5 /* i */
iaload
i2d
aload 2 /* yPoints */
iload 5 /* i */
iaload
i2d
invokevirtual java.awt.geom.Path2D.lineTo:(DD)V
11: .line 468
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
12: iload 5 /* i */
iload 3 /* nPoints */
if_icmplt 10
end local 5 // int i
13: .line 471
aload 0 /* this */
aload 4 /* path */
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
end local 4 // java.awt.geom.Path2D path
14: .line 473
StackMap locals:
StackMap stack:
return
end local 3 // int nPoints
end local 2 // int[] yPoints
end local 1 // int[] xPoints
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lsun/print/PathGraphics;
0 15 1 xPoints [I
0 15 2 yPoints [I
0 15 3 nPoints I
7 14 4 path Ljava/awt/geom/Path2D;
9 13 5 i I
MethodParameters:
Name Flags
xPoints
yPoints
nPoints
public void drawPolygon(int[], int[], int);
descriptor: ([I[II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // int[] xPoints
start local 2 // int[] yPoints
start local 3 // int nPoints
0: .line 498
aload 0 /* this */
new java.awt.Polygon
dup
aload 1 /* xPoints */
aload 2 /* yPoints */
iload 3 /* nPoints */
invokespecial java.awt.Polygon.<init>:([I[II)V
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
1: .line 499
return
end local 3 // int nPoints
end local 2 // int[] yPoints
end local 1 // int[] xPoints
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 xPoints [I
0 2 2 yPoints [I
0 2 3 nPoints I
MethodParameters:
Name Flags
xPoints
yPoints
nPoints
public void drawPolygon(java.awt.Polygon);
descriptor: (Ljava/awt/Polygon;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Polygon p
0: .line 509
aload 0 /* this */
aload 1 /* p */
invokevirtual sun.print.PathGraphics.draw:(Ljava/awt/Shape;)V
1: .line 510
return
end local 1 // java.awt.Polygon p
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 p Ljava/awt/Polygon;
MethodParameters:
Name Flags
p
public void fillPolygon(int[], int[], int);
descriptor: ([I[II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=4, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // int[] xPoints
start local 2 // int[] yPoints
start local 3 // int nPoints
0: .line 535
aload 0 /* this */
new java.awt.Polygon
dup
aload 1 /* xPoints */
aload 2 /* yPoints */
iload 3 /* nPoints */
invokespecial java.awt.Polygon.<init>:([I[II)V
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
1: .line 536
return
end local 3 // int nPoints
end local 2 // int[] yPoints
end local 1 // int[] xPoints
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 xPoints [I
0 2 2 yPoints [I
0 2 3 nPoints I
MethodParameters:
Name Flags
xPoints
yPoints
nPoints
public void fillPolygon(java.awt.Polygon);
descriptor: (Ljava/awt/Polygon;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Polygon p
0: .line 550
aload 0 /* this */
aload 1 /* p */
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
1: .line 551
return
end local 1 // java.awt.Polygon p
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 p Ljava/awt/Polygon;
MethodParameters:
Name Flags
p
public void drawString(java.lang.String, int, int);
descriptor: (Ljava/lang/String;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.lang.String str
start local 2 // int x
start local 3 // int y
0: .line 566
aload 0 /* this */
aload 1 /* str */
iload 2 /* x */
i2f
iload 3 /* y */
i2f
invokevirtual sun.print.PathGraphics.drawString:(Ljava/lang/String;FF)V
1: .line 567
return
end local 3 // int y
end local 2 // int x
end local 1 // java.lang.String str
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 str Ljava/lang/String;
0 2 2 x I
0 2 3 y I
MethodParameters:
Name Flags
str
x
y
public void drawString(java.lang.String, float, float);
descriptor: (Ljava/lang/String;FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.lang.String str
start local 2 // float x
start local 3 // float y
0: .line 570
aload 1 /* str */
invokevirtual java.lang.String.length:()I
ifne 2
1: .line 571
return
2: .line 574
StackMap locals:
StackMap stack:
new java.awt.font.TextLayout
dup
aload 1 /* str */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getFont:()Ljava/awt/Font;
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
invokespecial java.awt.font.TextLayout.<init>:(Ljava/lang/String;Ljava/awt/Font;Ljava/awt/font/FontRenderContext;)V
3: .line 573
astore 4 /* layout */
start local 4 // java.awt.font.TextLayout layout
4: .line 575
aload 4 /* layout */
aload 0 /* this */
fload 2 /* x */
fload 3 /* y */
invokevirtual java.awt.font.TextLayout.draw:(Ljava/awt/Graphics2D;FF)V
5: .line 576
return
end local 4 // java.awt.font.TextLayout layout
end local 3 // float y
end local 2 // float x
end local 1 // java.lang.String str
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/print/PathGraphics;
0 6 1 str Ljava/lang/String;
0 6 2 x F
0 6 3 y F
4 6 4 layout Ljava/awt/font/TextLayout;
MethodParameters:
Name Flags
str
x
y
protected void drawString(java.lang.String, float, float, java.awt.Font, java.awt.font.FontRenderContext, float);
descriptor: (Ljava/lang/String;FFLjava/awt/Font;Ljava/awt/font/FontRenderContext;F)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=5, locals=9, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // java.lang.String str
start local 2 // float x
start local 3 // float y
start local 4 // java.awt.Font font
start local 5 // java.awt.font.FontRenderContext frc
start local 6 // float w
0: .line 581
new java.awt.font.TextLayout
dup
aload 1 /* str */
aload 4 /* font */
aload 5 /* frc */
invokespecial java.awt.font.TextLayout.<init>:(Ljava/lang/String;Ljava/awt/Font;Ljava/awt/font/FontRenderContext;)V
1: .line 580
astore 7 /* layout */
start local 7 // java.awt.font.TextLayout layout
2: .line 583
aload 7 /* layout */
fload 2 /* x */
f2d
fload 3 /* y */
f2d
invokestatic java.awt.geom.AffineTransform.getTranslateInstance:(DD)Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.font.TextLayout.getOutline:(Ljava/awt/geom/AffineTransform;)Ljava/awt/Shape;
3: .line 582
astore 8 /* textShape */
start local 8 // java.awt.Shape textShape
4: .line 584
aload 0 /* this */
aload 8 /* textShape */
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
5: .line 585
return
end local 8 // java.awt.Shape textShape
end local 7 // java.awt.font.TextLayout layout
end local 6 // float w
end local 5 // java.awt.font.FontRenderContext frc
end local 4 // java.awt.Font font
end local 3 // float y
end local 2 // float x
end local 1 // java.lang.String str
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/print/PathGraphics;
0 6 1 str Ljava/lang/String;
0 6 2 x F
0 6 3 y F
0 6 4 font Ljava/awt/Font;
0 6 5 frc Ljava/awt/font/FontRenderContext;
0 6 6 w F
2 6 7 layout Ljava/awt/font/TextLayout;
4 6 8 textShape Ljava/awt/Shape;
MethodParameters:
Name Flags
str
x
y
font
frc
w
public void drawString(java.text.AttributedCharacterIterator, int, int);
descriptor: (Ljava/text/AttributedCharacterIterator;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.text.AttributedCharacterIterator iterator
start local 2 // int x
start local 3 // int y
0: .line 601
aload 0 /* this */
aload 1 /* iterator */
iload 2 /* x */
i2f
iload 3 /* y */
i2f
invokevirtual sun.print.PathGraphics.drawString:(Ljava/text/AttributedCharacterIterator;FF)V
1: .line 602
return
end local 3 // int y
end local 2 // int x
end local 1 // java.text.AttributedCharacterIterator iterator
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 iterator Ljava/text/AttributedCharacterIterator;
0 2 2 x I
0 2 3 y I
MethodParameters:
Name Flags
iterator
x
y
public void drawString(java.text.AttributedCharacterIterator, float, float);
descriptor: (Ljava/text/AttributedCharacterIterator;FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.text.AttributedCharacterIterator iterator
start local 2 // float x
start local 3 // float y
0: .line 605
aload 1 /* iterator */
ifnonnull 3
1: .line 607
new java.lang.NullPointerException
dup
ldc "attributedcharacteriterator is null"
invokespecial java.lang.NullPointerException.<init>:(Ljava/lang/String;)V
2: .line 606
athrow
3: .line 610
StackMap locals:
StackMap stack:
new java.awt.font.TextLayout
dup
aload 1 /* iterator */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
invokespecial java.awt.font.TextLayout.<init>:(Ljava/text/AttributedCharacterIterator;Ljava/awt/font/FontRenderContext;)V
4: .line 609
astore 4 /* layout */
start local 4 // java.awt.font.TextLayout layout
5: .line 611
aload 4 /* layout */
aload 0 /* this */
fload 2 /* x */
fload 3 /* y */
invokevirtual java.awt.font.TextLayout.draw:(Ljava/awt/Graphics2D;FF)V
6: .line 612
return
end local 4 // java.awt.font.TextLayout layout
end local 3 // float y
end local 2 // float x
end local 1 // java.text.AttributedCharacterIterator iterator
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/print/PathGraphics;
0 7 1 iterator Ljava/text/AttributedCharacterIterator;
0 7 2 x F
0 7 3 y F
5 7 4 layout Ljava/awt/font/TextLayout;
MethodParameters:
Name Flags
iterator
x
y
public void drawGlyphVector(java.awt.font.GlyphVector, float, float);
descriptor: (Ljava/awt/font/GlyphVector;FF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.font.GlyphVector g
start local 2 // float x
start local 3 // float y
0: .line 638
aload 0 /* this */
getfield sun.print.PathGraphics.printingGlyphVector:Z
ifeq 4
1: .line 639
getstatic sun.print.PathGraphics.$assertionsDisabled:Z
ifne 2
aload 0 /* this */
getfield sun.print.PathGraphics.printingGlyphVector:Z
ifeq 2
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
2: .line 640
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual java.awt.font.GlyphVector.getOutline:(FF)Ljava/awt/Shape;
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
3: .line 641
return
4: .line 645
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_1
putfield sun.print.PathGraphics.printingGlyphVector:Z
5: .line 646
getstatic sun.print.RasterPrinterJob.shapeTextProp:Z
ifne 7
6: .line 647
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printedSimpleGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ifne 12
7: .line 648
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual java.awt.font.GlyphVector.getOutline:(FF)Ljava/awt/Shape;
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
8: .line 650
goto 12
StackMap locals:
StackMap stack: java.lang.Throwable
9: astore 4
10: .line 651
aload 0 /* this */
iconst_0
putfield sun.print.PathGraphics.printingGlyphVector:Z
11: .line 652
aload 4
athrow
12: .line 651
StackMap locals:
StackMap stack:
aload 0 /* this */
iconst_0
putfield sun.print.PathGraphics.printingGlyphVector:Z
13: .line 653
return
end local 3 // float y
end local 2 // float x
end local 1 // java.awt.font.GlyphVector g
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/print/PathGraphics;
0 14 1 g Ljava/awt/font/GlyphVector;
0 14 2 x F
0 14 3 y F
Exception table:
from to target type
4 9 9 any
MethodParameters:
Name Flags
g
x
y
protected int platformFontCount(java.awt.Font, java.lang.String);
descriptor: (Ljava/awt/Font;Ljava/lang/String;)I
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=3, args_size=3
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Font font
start local 2 // java.lang.String str
0: .line 659
iconst_0
ireturn
end local 2 // java.lang.String str
end local 1 // java.awt.Font font
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
0 1 1 font Ljava/awt/Font;
0 1 2 str Ljava/lang/String;
MethodParameters:
Name Flags
font
str
protected boolean printGlyphVector(java.awt.font.GlyphVector, float, float);
descriptor: (Ljava/awt/font/GlyphVector;FF)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=4, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.font.GlyphVector gv
start local 2 // float x
start local 3 // float y
0: .line 668
iconst_0
ireturn
end local 3 // float y
end local 2 // float x
end local 1 // java.awt.font.GlyphVector gv
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
0 1 1 gv Ljava/awt/font/GlyphVector;
0 1 2 x F
0 1 3 y F
MethodParameters:
Name Flags
gv
x
y
boolean printedSimpleGlyphVector(java.awt.font.GlyphVector, float, float);
descriptor: (Ljava/awt/font/GlyphVector;FF)Z
flags: (0x0000)
Code:
stack=7, locals=31, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.font.GlyphVector g
start local 2 // float x
start local 3 // float y
0: .line 686
aload 1 /* g */
invokevirtual java.awt.font.GlyphVector.getLayoutFlags:()I
istore 4 /* flags */
start local 4 // int flags
1: .line 694
iload 4 /* flags */
ifeq 3
iload 4 /* flags */
iconst_2
if_icmpeq 3
2: .line 695
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ireturn
3: .line 698
StackMap locals: int
StackMap stack:
aload 1 /* g */
invokevirtual java.awt.font.GlyphVector.getFont:()Ljava/awt/Font;
astore 5 /* font */
start local 5 // java.awt.Font font
4: .line 699
aload 5 /* font */
invokestatic sun.font.FontUtilities.getFont2D:(Ljava/awt/Font;)Lsun/font/Font2D;
astore 6 /* font2D */
start local 6 // sun.font.Font2D font2D
5: .line 700
aload 6 /* font2D */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
getfield sun.font.Font2DHandle.font2D:Lsun/font/Font2D;
aload 6 /* font2D */
if_acmpeq 7
6: .line 702
iconst_0
ireturn
7: .line 705
StackMap locals: java.awt.Font sun.font.Font2D
StackMap stack:
ldc Lsun/print/PathGraphics;
dup
astore 8
monitorenter
8: .line 706
getstatic sun.print.PathGraphics.fontMapRef:Ljava/lang/ref/SoftReference;
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast java.util.Hashtable
astore 7 /* fontMap */
start local 7 // java.util.Hashtable fontMap
9: .line 707
aload 7 /* fontMap */
ifnonnull 13
10: .line 708
new java.util.Hashtable
dup
invokespecial java.util.Hashtable.<init>:()V
astore 7 /* fontMap */
11: .line 710
new java.lang.ref.SoftReference
dup
aload 7 /* fontMap */
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
12: .line 709
putstatic sun.print.PathGraphics.fontMapRef:Ljava/lang/ref/SoftReference;
13: .line 705
StackMap locals: java.util.Hashtable java.lang.Class
StackMap stack:
aload 8
monitorexit
14: goto 17
end local 7 // java.util.Hashtable fontMap
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D top java.lang.Class
StackMap stack: java.lang.Throwable
15: aload 8
monitorexit
16: athrow
start local 7 // java.util.Hashtable fontMap
17: .line 714
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D java.util.Hashtable
StackMap stack:
aload 1 /* g */
invokevirtual java.awt.font.GlyphVector.getNumGlyphs:()I
istore 8 /* numGlyphs */
start local 8 // int numGlyphs
18: .line 715
aload 1 /* g */
iconst_0
iload 8 /* numGlyphs */
aconst_null
invokevirtual java.awt.font.GlyphVector.getGlyphCodes:(II[I)[I
astore 9 /* glyphCodes */
start local 9 // int[] glyphCodes
19: .line 717
aconst_null
astore 10 /* glyphToCharMap */
start local 10 // char[] glyphToCharMap
20: .line 718
aconst_null
astore 11 /* mapArray */
start local 11 // char[][] mapArray
21: .line 719
aconst_null
astore 12 /* cf */
start local 12 // sun.font.CompositeFont cf
22: .line 722
aload 7 /* fontMap */
dup
astore 13
monitorenter
23: .line 723
aload 6 /* font2D */
instanceof sun.font.CompositeFont
ifeq 45
24: .line 724
aload 6 /* font2D */
checkcast sun.font.CompositeFont
astore 12 /* cf */
25: .line 725
aload 12 /* cf */
invokevirtual sun.font.CompositeFont.getNumSlots:()I
istore 14 /* numSlots */
start local 14 // int numSlots
26: .line 726
aload 7 /* fontMap */
aload 6 /* font2D */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast char[][]
astore 11 /* mapArray */
27: .line 727
aload 11 /* mapArray */
ifnonnull 30
28: .line 728
iload 14 /* numSlots */
anewarray char[]
astore 11 /* mapArray */
29: .line 729
aload 7 /* fontMap */
aload 6 /* font2D */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
aload 11 /* mapArray */
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
30: .line 731
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D java.util.Hashtable int int[] char[] char[][] sun.font.CompositeFont java.util.Hashtable int
StackMap stack:
iconst_0
istore 15 /* i */
start local 15 // int i
31: goto 43
32: .line 732
StackMap locals: int
StackMap stack:
aload 9 /* glyphCodes */
iload 15 /* i */
iaload
bipush 24
iushr
istore 16 /* slot */
start local 16 // int slot
33: .line 733
iload 16 /* slot */
iload 14 /* numSlots */
if_icmplt 36
34: .line 734
aload 13
monitorexit
35: iconst_0
ireturn
36: .line 736
StackMap locals: int
StackMap stack:
aload 11 /* mapArray */
iload 16 /* slot */
aaload
ifnonnull 42
37: .line 737
aload 12 /* cf */
iload 16 /* slot */
invokevirtual sun.font.CompositeFont.getSlotFont:(I)Lsun/font/PhysicalFont;
astore 17 /* slotFont */
start local 17 // sun.font.Font2D slotFont
38: .line 738
aload 7 /* fontMap */
aload 17 /* slotFont */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast char[]
astore 18 /* map */
start local 18 // char[] map
39: .line 739
aload 18 /* map */
ifnonnull 41
40: .line 740
aload 17 /* slotFont */
invokestatic sun.print.PathGraphics.getGlyphToCharMapForFont:(Lsun/font/Font2D;)[C
astore 18 /* map */
41: .line 742
StackMap locals: sun.font.Font2D char[]
StackMap stack:
aload 11 /* mapArray */
iload 16 /* slot */
aload 18 /* map */
aastore
end local 18 // char[] map
end local 17 // sun.font.Font2D slotFont
end local 16 // int slot
42: .line 731
StackMap locals:
StackMap stack:
iinc 15 /* i */ 1
StackMap locals:
StackMap stack:
43: iload 15 /* i */
iload 8 /* numGlyphs */
if_icmplt 32
end local 15 // int i
end local 14 // int numSlots
44: .line 745
goto 49
45: .line 746
StackMap locals:
StackMap stack:
aload 7 /* fontMap */
aload 6 /* font2D */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
invokevirtual java.util.Hashtable.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast char[]
astore 10 /* glyphToCharMap */
46: .line 747
aload 10 /* glyphToCharMap */
ifnonnull 49
47: .line 748
aload 6 /* font2D */
invokestatic sun.print.PathGraphics.getGlyphToCharMapForFont:(Lsun/font/Font2D;)[C
astore 10 /* glyphToCharMap */
48: .line 749
aload 7 /* fontMap */
aload 6 /* font2D */
getfield sun.font.Font2D.handle:Lsun/font/Font2DHandle;
aload 10 /* glyphToCharMap */
invokevirtual java.util.Hashtable.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
49: .line 722
StackMap locals:
StackMap stack:
aload 13
monitorexit
50: goto 53
StackMap locals:
StackMap stack: java.lang.Throwable
51: aload 13
monitorexit
52: athrow
53: .line 754
StackMap locals:
StackMap stack:
iload 8 /* numGlyphs */
newarray 5
astore 13 /* chars */
start local 13 // char[] chars
54: .line 755
aload 12 /* cf */
ifnull 75
55: .line 756
iconst_0
istore 14 /* i */
start local 14 // int i
56: goto 73
57: .line 757
StackMap locals: char[] int
StackMap stack:
aload 9 /* glyphCodes */
iload 14 /* i */
iaload
istore 15 /* gc */
start local 15 // int gc
58: .line 758
aload 11 /* mapArray */
iload 15 /* gc */
bipush 24
iushr
aaload
astore 16 /* map */
start local 16 // char[] map
59: .line 759
iload 15 /* gc */
ldc 16777215
iand
istore 15 /* gc */
60: .line 760
aload 16 /* map */
ifnonnull 62
61: .line 761
iconst_0
ireturn
62: .line 779
StackMap locals: int char[]
StackMap stack:
iload 15 /* gc */
ldc 65535
if_icmpne 65
63: .line 780
bipush 10
istore 17 /* ch */
start local 17 // char ch
64: .line 781
goto 68
end local 17 // char ch
StackMap locals:
StackMap stack:
65: iload 15 /* gc */
iflt 66
iload 15 /* gc */
aload 16 /* map */
arraylength
if_icmplt 67
66: .line 782
StackMap locals:
StackMap stack:
iconst_0
ireturn
67: .line 784
StackMap locals:
StackMap stack:
aload 16 /* map */
iload 15 /* gc */
caload
istore 17 /* ch */
start local 17 // char ch
68: .line 786
StackMap locals: int
StackMap stack:
iload 17 /* ch */
ldc 65535
if_icmpeq 71
69: .line 787
aload 13 /* chars */
iload 14 /* i */
iload 17 /* ch */
castore
70: .line 788
goto 72
71: .line 789
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 17 // char ch
end local 16 // char[] map
end local 15 // int gc
72: .line 756
StackMap locals:
StackMap stack:
iinc 14 /* i */ 1
StackMap locals:
StackMap stack:
73: iload 14 /* i */
iload 8 /* numGlyphs */
if_icmplt 57
end local 14 // int i
74: .line 792
goto 90
75: .line 793
StackMap locals:
StackMap stack:
iconst_0
istore 14 /* i */
start local 14 // int i
76: goto 89
77: .line 794
StackMap locals: int
StackMap stack:
aload 9 /* glyphCodes */
iload 14 /* i */
iaload
istore 15 /* gc */
start local 15 // int gc
78: .line 796
iload 15 /* gc */
ldc 65535
if_icmpne 81
79: .line 797
bipush 10
istore 16 /* ch */
start local 16 // char ch
80: .line 798
goto 84
end local 16 // char ch
StackMap locals: int
StackMap stack:
81: iload 15 /* gc */
iflt 82
iload 15 /* gc */
aload 10 /* glyphToCharMap */
arraylength
if_icmplt 83
82: .line 799
StackMap locals:
StackMap stack:
iconst_0
ireturn
83: .line 801
StackMap locals:
StackMap stack:
aload 10 /* glyphToCharMap */
iload 15 /* gc */
caload
istore 16 /* ch */
start local 16 // char ch
84: .line 803
StackMap locals: int
StackMap stack:
iload 16 /* ch */
ldc 65535
if_icmpeq 87
85: .line 804
aload 13 /* chars */
iload 14 /* i */
iload 16 /* ch */
castore
86: .line 805
goto 88
87: .line 806
StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 16 // char ch
end local 15 // int gc
88: .line 793
StackMap locals:
StackMap stack:
iinc 14 /* i */ 1
StackMap locals:
StackMap stack:
89: iload 14 /* i */
iload 8 /* numGlyphs */
if_icmplt 77
end local 14 // int i
90: .line 811
StackMap locals:
StackMap stack:
aload 1 /* g */
invokevirtual java.awt.font.GlyphVector.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
astore 14 /* gvFrc */
start local 14 // java.awt.font.FontRenderContext gvFrc
91: .line 812
aload 5 /* font */
aload 14 /* gvFrc */
aload 13 /* chars */
invokevirtual java.awt.Font.createGlyphVector:(Ljava/awt/font/FontRenderContext;[C)Ljava/awt/font/GlyphVector;
astore 15 /* gv2 */
start local 15 // java.awt.font.GlyphVector gv2
92: .line 813
aload 15 /* gv2 */
invokevirtual java.awt.font.GlyphVector.getNumGlyphs:()I
iload 8 /* numGlyphs */
if_icmpeq 94
93: .line 814
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ireturn
94: .line 816
StackMap locals: java.awt.font.FontRenderContext java.awt.font.GlyphVector
StackMap stack:
aload 15 /* gv2 */
iconst_0
iload 8 /* numGlyphs */
aconst_null
invokevirtual java.awt.font.GlyphVector.getGlyphCodes:(II[I)[I
astore 16 /* glyphCodes2 */
start local 16 // int[] glyphCodes2
95: .line 820
iconst_0
istore 17 /* i */
start local 17 // int i
96: goto 100
97: .line 821
StackMap locals: int[] int
StackMap stack:
aload 9 /* glyphCodes */
iload 17 /* i */
iaload
aload 16 /* glyphCodes2 */
iload 17 /* i */
iaload
if_icmpeq 99
98: .line 822
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ireturn
99: .line 820
StackMap locals:
StackMap stack:
iinc 17 /* i */ 1
StackMap locals:
StackMap stack:
100: iload 17 /* i */
iload 8 /* numGlyphs */
if_icmplt 97
end local 17 // int i
101: .line 826
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getFontRenderContext:()Ljava/awt/font/FontRenderContext;
astore 17 /* g2dFrc */
start local 17 // java.awt.font.FontRenderContext g2dFrc
102: .line 827
aload 14 /* gvFrc */
aload 17 /* g2dFrc */
invokevirtual java.awt.font.FontRenderContext.equals:(Ljava/awt/font/FontRenderContext;)Z
istore 18 /* compatibleFRC */
start local 18 // boolean compatibleFRC
103: .line 831
iload 18 /* compatibleFRC */
ifne 119
104: .line 832
aload 14 /* gvFrc */
invokevirtual java.awt.font.FontRenderContext.usesFractionalMetrics:()Z
aload 17 /* g2dFrc */
invokevirtual java.awt.font.FontRenderContext.usesFractionalMetrics:()Z
if_icmpne 119
105: .line 833
aload 14 /* gvFrc */
invokevirtual java.awt.font.FontRenderContext.getTransform:()Ljava/awt/geom/AffineTransform;
astore 19 /* gvAT */
start local 19 // java.awt.geom.AffineTransform gvAT
106: .line 834
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
astore 20 /* g2dAT */
start local 20 // java.awt.geom.AffineTransform g2dAT
107: .line 835
iconst_4
newarray 7
astore 21 /* gvMatrix */
start local 21 // double[] gvMatrix
108: .line 836
iconst_4
newarray 7
astore 22 /* g2dMatrix */
start local 22 // double[] g2dMatrix
109: .line 837
aload 19 /* gvAT */
aload 21 /* gvMatrix */
invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
110: .line 838
aload 20 /* g2dAT */
aload 22 /* g2dMatrix */
invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
111: .line 839
iconst_1
istore 18 /* compatibleFRC */
112: .line 840
iconst_0
istore 23 /* i */
start local 23 // int i
113: goto 118
114: .line 841
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D java.util.Hashtable int int[] char[] char[][] sun.font.CompositeFont char[] java.awt.font.FontRenderContext java.awt.font.GlyphVector int[] java.awt.font.FontRenderContext int java.awt.geom.AffineTransform java.awt.geom.AffineTransform double[] double[] int
StackMap stack:
aload 21 /* gvMatrix */
iload 23 /* i */
daload
aload 22 /* g2dMatrix */
iload 23 /* i */
daload
dcmpl
ifeq 117
115: .line 842
iconst_0
istore 18 /* compatibleFRC */
116: .line 843
goto 119
117: .line 840
StackMap locals:
StackMap stack:
iinc 23 /* i */ 1
StackMap locals:
StackMap stack:
118: iload 23 /* i */
iconst_4
if_icmplt 114
end local 23 // int i
end local 22 // double[] g2dMatrix
end local 21 // double[] gvMatrix
end local 20 // java.awt.geom.AffineTransform g2dAT
end local 19 // java.awt.geom.AffineTransform gvAT
119: .line 848
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D java.util.Hashtable int int[] char[] char[][] sun.font.CompositeFont char[] java.awt.font.FontRenderContext java.awt.font.GlyphVector int[] java.awt.font.FontRenderContext int
StackMap stack:
new java.lang.String
dup
aload 13 /* chars */
iconst_0
iload 8 /* numGlyphs */
invokespecial java.lang.String.<init>:([CII)V
astore 19 /* str */
start local 19 // java.lang.String str
120: .line 849
aload 0 /* this */
aload 5 /* font */
aload 19 /* str */
invokevirtual sun.print.PathGraphics.platformFontCount:(Ljava/awt/Font;Ljava/lang/String;)I
istore 20 /* numFonts */
start local 20 // int numFonts
121: .line 850
iload 20 /* numFonts */
ifne 123
122: .line 851
iconst_0
ireturn
123: .line 854
StackMap locals: java.lang.String int
StackMap stack:
aload 1 /* g */
iconst_0
iload 8 /* numGlyphs */
aconst_null
invokevirtual java.awt.font.GlyphVector.getGlyphPositions:(II[F)[F
astore 21 /* positions */
start local 21 // float[] positions
124: .line 856
iload 4 /* flags */
iconst_2
iand
ifeq 127
125: .line 857
aload 0 /* this */
aload 15 /* gv2 */
aload 16 /* glyphCodes2 */
aload 9 /* glyphCodes */
aload 21 /* positions */
invokevirtual sun.print.PathGraphics.samePositions:(Ljava/awt/font/GlyphVector;[I[I[F)Z
ifne 127
126: .line 855
iconst_0
goto 128
StackMap locals: float[]
StackMap stack:
127: iconst_1
StackMap locals:
StackMap stack: int
128: istore 22 /* noPositionAdjustments */
start local 22 // boolean noPositionAdjustments
129: .line 875
aload 1 /* g */
iload 8 /* numGlyphs */
invokevirtual java.awt.font.GlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
astore 23 /* gvAdvancePt */
start local 23 // java.awt.geom.Point2D gvAdvancePt
130: .line 876
aload 23 /* gvAdvancePt */
invokevirtual java.awt.geom.Point2D.getX:()D
d2f
fstore 24 /* gvAdvanceX */
start local 24 // float gvAdvanceX
131: .line 877
iconst_0
istore 25 /* layoutAffectsAdvance */
start local 25 // boolean layoutAffectsAdvance
132: .line 878
aload 5 /* font */
invokevirtual java.awt.Font.hasLayoutAttributes:()Z
ifeq 148
aload 0 /* this */
getfield sun.print.PathGraphics.printingGlyphVector:Z
ifeq 148
133: .line 879
iload 22 /* noPositionAdjustments */
ifeq 148
134: .line 894
aload 5 /* font */
invokevirtual java.awt.Font.getAttributes:()Ljava/util/Map;
astore 26 /* map */
start local 26 // java.util.Map map
135: .line 895
aload 26 /* map */
getstatic java.awt.font.TextAttribute.TRACKING:Ljava/awt/font/TextAttribute;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
astore 27 /* o */
start local 27 // java.lang.Object o
136: .line 896
aload 27 /* o */
ifnull 139
aload 27 /* o */
instanceof java.lang.Number
ifeq 139
137: .line 897
aload 27 /* o */
checkcast java.lang.Number
invokevirtual java.lang.Number.floatValue:()F
fconst_0
fcmpl
ifeq 139
138: .line 896
iconst_1
goto 140
StackMap locals: sun.print.PathGraphics java.awt.font.GlyphVector float float int java.awt.Font sun.font.Font2D java.util.Hashtable int int[] char[] char[][] sun.font.CompositeFont char[] java.awt.font.FontRenderContext java.awt.font.GlyphVector int[] java.awt.font.FontRenderContext int java.lang.String int float[] int java.awt.geom.Point2D float int java.util.Map java.lang.Object
StackMap stack:
139: iconst_0
StackMap locals:
StackMap stack: int
140: istore 28 /* tracking */
start local 28 // boolean tracking
141: .line 899
iload 28 /* tracking */
ifeq 144
142: .line 900
iconst_0
istore 22 /* noPositionAdjustments */
143: .line 901
goto 148
144: .line 902
StackMap locals: int
StackMap stack:
aload 5 /* font */
aload 19 /* str */
aload 14 /* gvFrc */
invokevirtual java.awt.Font.getStringBounds:(Ljava/lang/String;Ljava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
astore 29 /* bounds */
start local 29 // java.awt.geom.Rectangle2D bounds
145: .line 903
aload 29 /* bounds */
invokevirtual java.awt.geom.Rectangle2D.getWidth:()D
d2f
fstore 30 /* strAdvanceX */
start local 30 // float strAdvanceX
146: .line 904
fload 30 /* strAdvanceX */
fload 24 /* gvAdvanceX */
fsub
invokestatic java.lang.Math.abs:(F)F
f2d
ldc 1.0E-5
dcmpl
ifle 148
147: .line 905
iconst_1
istore 25 /* layoutAffectsAdvance */
end local 30 // float strAdvanceX
end local 29 // java.awt.geom.Rectangle2D bounds
end local 28 // boolean tracking
end local 27 // java.lang.Object o
end local 26 // java.util.Map map
148: .line 910
StackMap locals:
StackMap stack:
iload 18 /* compatibleFRC */
ifeq 151
iload 22 /* noPositionAdjustments */
ifeq 151
iload 25 /* layoutAffectsAdvance */
ifne 151
149: .line 911
aload 0 /* this */
aload 19 /* str */
fload 2 /* x */
fload 3 /* y */
aload 5 /* font */
aload 14 /* gvFrc */
fconst_0
invokevirtual sun.print.PathGraphics.drawString:(Ljava/lang/String;FFLjava/awt/Font;Ljava/awt/font/FontRenderContext;F)V
150: .line 912
iconst_1
ireturn
151: .line 924
StackMap locals:
StackMap stack:
iload 20 /* numFonts */
iconst_1
if_icmpne 154
aload 0 /* this */
invokevirtual sun.print.PathGraphics.canDrawStringToWidth:()Z
ifeq 154
iload 22 /* noPositionAdjustments */
ifeq 154
152: .line 925
aload 0 /* this */
aload 19 /* str */
fload 2 /* x */
fload 3 /* y */
aload 5 /* font */
aload 14 /* gvFrc */
fload 24 /* gvAdvanceX */
invokevirtual sun.print.PathGraphics.drawString:(Ljava/lang/String;FFLjava/awt/Font;Ljava/awt/font/FontRenderContext;F)V
153: .line 926
iconst_1
ireturn
154: .line 934
StackMap locals:
StackMap stack:
aload 13 /* chars */
iconst_0
aload 13 /* chars */
arraylength
invokestatic sun.font.FontUtilities.isComplexText:([CII)Z
ifeq 156
155: .line 935
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ireturn
156: .line 949
StackMap locals:
StackMap stack:
iload 8 /* numGlyphs */
bipush 10
if_icmple 158
aload 0 /* this */
aload 1 /* g */
fload 2 /* x */
fload 3 /* y */
invokevirtual sun.print.PathGraphics.printGlyphVector:(Ljava/awt/font/GlyphVector;FF)Z
ifeq 158
157: .line 950
iconst_1
ireturn
158: .line 953
StackMap locals:
StackMap stack:
iconst_0
istore 26 /* i */
start local 26 // int i
159: goto 165
160: .line 954
StackMap locals: int
StackMap stack:
new java.lang.String
dup
aload 13 /* chars */
iload 26 /* i */
iconst_1
invokespecial java.lang.String.<init>:([CII)V
astore 27 /* s */
start local 27 // java.lang.String s
161: .line 955
aload 0 /* this */
aload 27 /* s */
fload 2 /* x */
aload 21 /* positions */
iload 26 /* i */
iconst_2
imul
faload
fadd
fload 3 /* y */
aload 21 /* positions */
iload 26 /* i */
iconst_2
imul
iconst_1
iadd
faload
fadd
162: .line 956
aload 5 /* font */
aload 14 /* gvFrc */
fconst_0
163: .line 955
invokevirtual sun.print.PathGraphics.drawString:(Ljava/lang/String;FFLjava/awt/Font;Ljava/awt/font/FontRenderContext;F)V
end local 27 // java.lang.String s
164: .line 953
iinc 26 /* i */ 1
StackMap locals:
StackMap stack:
165: iload 26 /* i */
iload 8 /* numGlyphs */
if_icmplt 160
end local 26 // int i
166: .line 958
iconst_1
ireturn
end local 25 // boolean layoutAffectsAdvance
end local 24 // float gvAdvanceX
end local 23 // java.awt.geom.Point2D gvAdvancePt
end local 22 // boolean noPositionAdjustments
end local 21 // float[] positions
end local 20 // int numFonts
end local 19 // java.lang.String str
end local 18 // boolean compatibleFRC
end local 17 // java.awt.font.FontRenderContext g2dFrc
end local 16 // int[] glyphCodes2
end local 15 // java.awt.font.GlyphVector gv2
end local 14 // java.awt.font.FontRenderContext gvFrc
end local 13 // char[] chars
end local 12 // sun.font.CompositeFont cf
end local 11 // char[][] mapArray
end local 10 // char[] glyphToCharMap
end local 9 // int[] glyphCodes
end local 8 // int numGlyphs
end local 7 // java.util.Hashtable fontMap
end local 6 // sun.font.Font2D font2D
end local 5 // java.awt.Font font
end local 4 // int flags
end local 3 // float y
end local 2 // float x
end local 1 // java.awt.font.GlyphVector g
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 167 0 this Lsun/print/PathGraphics;
0 167 1 g Ljava/awt/font/GlyphVector;
0 167 2 x F
0 167 3 y F
1 167 4 flags I
4 167 5 font Ljava/awt/Font;
5 167 6 font2D Lsun/font/Font2D;
9 15 7 fontMap Ljava/util/Hashtable<Lsun/font/Font2DHandle;Ljava/lang/Object;>;
17 167 7 fontMap Ljava/util/Hashtable<Lsun/font/Font2DHandle;Ljava/lang/Object;>;
18 167 8 numGlyphs I
19 167 9 glyphCodes [I
20 167 10 glyphToCharMap [C
21 167 11 mapArray [[C
22 167 12 cf Lsun/font/CompositeFont;
26 44 14 numSlots I
31 44 15 i I
33 42 16 slot I
38 42 17 slotFont Lsun/font/Font2D;
39 42 18 map [C
54 167 13 chars [C
56 74 14 i I
58 72 15 gc I
59 72 16 map [C
64 65 17 ch C
68 72 17 ch C
76 90 14 i I
78 88 15 gc I
80 81 16 ch C
84 88 16 ch C
91 167 14 gvFrc Ljava/awt/font/FontRenderContext;
92 167 15 gv2 Ljava/awt/font/GlyphVector;
95 167 16 glyphCodes2 [I
96 101 17 i I
102 167 17 g2dFrc Ljava/awt/font/FontRenderContext;
103 167 18 compatibleFRC Z
106 119 19 gvAT Ljava/awt/geom/AffineTransform;
107 119 20 g2dAT Ljava/awt/geom/AffineTransform;
108 119 21 gvMatrix [D
109 119 22 g2dMatrix [D
113 119 23 i I
120 167 19 str Ljava/lang/String;
121 167 20 numFonts I
124 167 21 positions [F
129 167 22 noPositionAdjustments Z
130 167 23 gvAdvancePt Ljava/awt/geom/Point2D;
131 167 24 gvAdvanceX F
132 167 25 layoutAffectsAdvance Z
135 148 26 map Ljava/util/Map<Ljava/awt/font/TextAttribute;*>;
136 148 27 o Ljava/lang/Object;
141 148 28 tracking Z
145 148 29 bounds Ljava/awt/geom/Rectangle2D;
146 148 30 strAdvanceX F
159 166 26 i I
161 164 27 s Ljava/lang/String;
Exception table:
from to target type
8 14 15 any
15 16 15 any
23 35 51 any
36 50 51 any
51 52 51 any
MethodParameters:
Name Flags
g
x
y
private boolean samePositions(java.awt.font.GlyphVector, int[], int[], float[]);
descriptor: (Ljava/awt/font/GlyphVector;[I[I[F)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=8, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.font.GlyphVector gv
start local 2 // int[] gvcodes
start local 3 // int[] origCodes
start local 4 // float[] origPositions
0: .line 972
aload 1 /* gv */
invokevirtual java.awt.font.GlyphVector.getNumGlyphs:()I
istore 5 /* numGlyphs */
start local 5 // int numGlyphs
1: .line 973
aload 1 /* gv */
iconst_0
iload 5 /* numGlyphs */
aconst_null
invokevirtual java.awt.font.GlyphVector.getGlyphPositions:(II[F)[F
astore 6 /* gvpos */
start local 6 // float[] gvpos
2: .line 976
iload 5 /* numGlyphs */
aload 2 /* gvcodes */
arraylength
if_icmpne 5
3: .line 977
aload 3 /* origCodes */
arraylength
aload 2 /* gvcodes */
arraylength
if_icmpne 5
4: .line 978
aload 4 /* origPositions */
arraylength
aload 6 /* gvpos */
arraylength
if_icmpeq 6
5: .line 979
StackMap locals: int float[]
StackMap stack:
iconst_0
ireturn
6: .line 982
StackMap locals:
StackMap stack:
iconst_0
istore 7 /* i */
start local 7 // int i
7: goto 11
8: .line 983
StackMap locals: int
StackMap stack:
aload 2 /* gvcodes */
iload 7 /* i */
iaload
aload 3 /* origCodes */
iload 7 /* i */
iaload
if_icmpne 9
aload 6 /* gvpos */
iload 7 /* i */
faload
aload 4 /* origPositions */
iload 7 /* i */
faload
fcmpl
ifeq 10
9: .line 984
StackMap locals:
StackMap stack:
iconst_0
ireturn
10: .line 982
StackMap locals:
StackMap stack:
iinc 7 /* i */ 1
StackMap locals:
StackMap stack:
11: iload 7 /* i */
iload 5 /* numGlyphs */
if_icmplt 8
end local 7 // int i
12: .line 987
iconst_1
ireturn
end local 6 // float[] gvpos
end local 5 // int numGlyphs
end local 4 // float[] origPositions
end local 3 // int[] origCodes
end local 2 // int[] gvcodes
end local 1 // java.awt.font.GlyphVector gv
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/print/PathGraphics;
0 13 1 gv Ljava/awt/font/GlyphVector;
0 13 2 gvcodes [I
0 13 3 origCodes [I
0 13 4 origPositions [F
1 13 5 numGlyphs I
2 13 6 gvpos [F
7 12 7 i I
MethodParameters:
Name Flags
gv
gvcodes
origCodes
origPositions
protected boolean canDrawStringToWidth();
descriptor: ()Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 // sun.print.PathGraphics this
0: .line 991
iconst_0
ireturn
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
private static char[] getGlyphToCharMapForFont(sun.font.Font2D);
descriptor: (Lsun/font/Font2D;)[C
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=6, args_size=1
start local 0 // sun.font.Font2D font2D
0: .line 1004
aload 0 /* font2D */
invokevirtual sun.font.Font2D.getNumGlyphs:()I
istore 1 /* numGlyphs */
start local 1 // int numGlyphs
1: .line 1005
aload 0 /* font2D */
invokevirtual sun.font.Font2D.getMissingGlyphCode:()I
istore 2 /* missingGlyph */
start local 2 // int missingGlyph
2: .line 1006
iload 1 /* numGlyphs */
newarray 5
astore 3 /* glyphToCharMap */
start local 3 // char[] glyphToCharMap
3: .line 1009
iconst_0
istore 5 /* i */
start local 5 // int i
4: goto 7
5: .line 1010
StackMap locals: sun.font.Font2D int int char[] top int
StackMap stack:
aload 3 /* glyphToCharMap */
iload 5 /* i */
ldc 65535
castore
6: .line 1009
iinc 5 /* i */ 1
StackMap locals:
StackMap stack:
7: iload 5 /* i */
iload 1 /* numGlyphs */
if_icmplt 5
end local 5 // int i
8: .line 1018
iconst_0
istore 5 /* c */
start local 5 // char c
9: goto 21
10: .line 1019
StackMap locals: sun.font.Font2D int int char[] top int
StackMap stack:
iload 5 /* c */
ldc 55296
if_icmplt 13
11: .line 1020
iload 5 /* c */
ldc 57343
if_icmpgt 13
12: .line 1021
goto 20
13: .line 1023
StackMap locals:
StackMap stack:
aload 0 /* font2D */
iload 5 /* c */
invokevirtual sun.font.Font2D.charToGlyph:(I)I
istore 4 /* glyph */
start local 4 // int glyph
14: .line 1024
iload 4 /* glyph */
iload 2 /* missingGlyph */
if_icmpeq 20
15: .line 1025
iload 4 /* glyph */
iflt 20
iload 4 /* glyph */
iload 1 /* numGlyphs */
if_icmpge 20
16: .line 1026
aload 3 /* glyphToCharMap */
iload 4 /* glyph */
caload
17: .line 1027
ldc 65535
18: .line 1026
if_icmpne 20
19: .line 1028
aload 3 /* glyphToCharMap */
iload 4 /* glyph */
iload 5 /* c */
castore
end local 4 // int glyph
20: .line 1018
StackMap locals:
StackMap stack:
iload 5 /* c */
iconst_1
iadd
i2c
istore 5 /* c */
StackMap locals:
StackMap stack:
21: iload 5 /* c */
ldc 65535
if_icmplt 10
end local 5 // char c
22: .line 1031
aload 3 /* glyphToCharMap */
areturn
end local 3 // char[] glyphToCharMap
end local 2 // int missingGlyph
end local 1 // int numGlyphs
end local 0 // sun.font.Font2D font2D
LocalVariableTable:
Start End Slot Name Signature
0 23 0 font2D Lsun/font/Font2D;
1 23 1 numGlyphs I
2 23 2 missingGlyph I
3 23 3 glyphToCharMap [C
14 20 4 glyph I
4 8 5 i I
9 22 5 c C
MethodParameters:
Name Flags
font2D
public void draw(java.awt.Shape);
descriptor: (Ljava/awt/Shape;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Shape s
0: .line 1050
aload 0 /* this */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getStroke:()Ljava/awt/Stroke;
aload 1 /* s */
invokeinterface java.awt.Stroke.createStrokedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;)V
1: .line 1051
return
end local 1 // java.awt.Shape s
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/print/PathGraphics;
0 2 1 s Ljava/awt/Shape;
MethodParameters:
Name Flags
s
public void fill(java.awt.Shape);
descriptor: (Ljava/awt/Shape;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Shape s
0: .line 1066
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getPaint:()Ljava/awt/Paint;
astore 2 /* paint */
start local 2 // java.awt.Paint paint
1: .line 1069
aload 0 /* this */
aload 1 /* s */
aload 2 /* paint */
checkcast java.awt.Color
invokevirtual sun.print.PathGraphics.fill:(Ljava/awt/Shape;Ljava/awt/Color;)V
2: .line 1077
goto 5
StackMap locals: sun.print.PathGraphics java.awt.Shape java.awt.Paint
StackMap stack: java.lang.ClassCastException
3: pop
4: .line 1078
new java.lang.IllegalArgumentException
dup
ldc "Expected a Color instance"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: .line 1080
StackMap locals:
StackMap stack:
return
end local 2 // java.awt.Paint paint
end local 1 // java.awt.Shape s
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lsun/print/PathGraphics;
0 6 1 s Ljava/awt/Shape;
1 6 2 paint Ljava/awt/Paint;
Exception table:
from to target type
1 2 3 Class java.lang.ClassCastException
MethodParameters:
Name Flags
s
public void fill(java.awt.Shape, java.awt.Color);
descriptor: (Ljava/awt/Shape;Ljava/awt/Color;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=3
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Shape s
start local 2 // java.awt.Color color
0: .line 1083
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
astore 3 /* deviceTransform */
start local 3 // java.awt.geom.AffineTransform deviceTransform
1: .line 1085
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
ifnull 3
2: .line 1086
aload 0 /* this */
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getClip:()Ljava/awt/Shape;
aload 3 /* deviceTransform */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
invokevirtual sun.print.PathGraphics.deviceClip:(Ljava/awt/geom/PathIterator;)V
3: .line 1088
StackMap locals: java.awt.geom.AffineTransform
StackMap stack:
aload 0 /* this */
aload 1 /* s */
aload 3 /* deviceTransform */
invokeinterface java.awt.Shape.getPathIterator:(Ljava/awt/geom/AffineTransform;)Ljava/awt/geom/PathIterator;
aload 2 /* color */
invokevirtual sun.print.PathGraphics.deviceFill:(Ljava/awt/geom/PathIterator;Ljava/awt/Color;)V
4: .line 1089
return
end local 3 // java.awt.geom.AffineTransform deviceTransform
end local 2 // java.awt.Color color
end local 1 // java.awt.Shape s
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 s Ljava/awt/Shape;
0 5 2 color Ljava/awt/Color;
1 5 3 deviceTransform Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
s
color
protected abstract void deviceFill(java.awt.geom.PathIterator, java.awt.Color);
descriptor: (Ljava/awt/geom/PathIterator;Ljava/awt/Color;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
pathIter
color
protected abstract void deviceClip(java.awt.geom.PathIterator);
descriptor: (Ljava/awt/geom/PathIterator;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
pathIter
protected abstract void deviceFrameRect(int, int, int, int, java.awt.Color);
descriptor: (IIIILjava/awt/Color;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
x
y
width
height
color
protected abstract void deviceDrawLine(int, int, int, int, java.awt.Color);
descriptor: (IIIILjava/awt/Color;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
xBegin
yBegin
xEnd
yEnd
color
protected abstract void deviceFillRect(int, int, int, int, java.awt.Color);
descriptor: (IIIILjava/awt/Color;)V
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
x
y
width
height
color
protected java.awt.image.BufferedImage getBufferedImage(java.awt.Image);
descriptor: (Ljava/awt/Image;)Ljava/awt/image/BufferedImage;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
0: .line 1127
aload 1 /* img */
instanceof java.awt.image.BufferedImage
ifeq 2
1: .line 1129
aload 1 /* img */
checkcast java.awt.image.BufferedImage
areturn
2: .line 1130
StackMap locals:
StackMap stack:
aload 1 /* img */
instanceof sun.awt.image.ToolkitImage
ifeq 4
3: .line 1134
aload 1 /* img */
checkcast sun.awt.image.ToolkitImage
invokevirtual sun.awt.image.ToolkitImage.getBufferedImage:()Ljava/awt/image/BufferedImage;
areturn
4: .line 1135
StackMap locals:
StackMap stack:
aload 1 /* img */
instanceof java.awt.image.VolatileImage
ifeq 6
5: .line 1138
aload 1 /* img */
checkcast java.awt.image.VolatileImage
invokevirtual java.awt.image.VolatileImage.getSnapshot:()Ljava/awt/image/BufferedImage;
areturn
6: .line 1145
StackMap locals:
StackMap stack:
aconst_null
areturn
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/print/PathGraphics;
0 7 1 img Ljava/awt/Image;
MethodParameters:
Name Flags
img
protected boolean hasTransparentPixels(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=17, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.image.BufferedImage bufferedImage
0: .line 1157
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 2 /* colorModel */
start local 2 // java.awt.image.ColorModel colorModel
1: .line 1158
aload 2 /* colorModel */
ifnonnull 3
2: .line 1159
iconst_1
goto 5
3: .line 1160
StackMap locals: java.awt.image.ColorModel
StackMap stack:
aload 2 /* colorModel */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_1
if_icmpeq 4
iconst_1
goto 5
StackMap locals:
StackMap stack:
4: iconst_0
5: .line 1158
StackMap locals:
StackMap stack: int
istore 3 /* hasTransparency */
start local 3 // boolean hasTransparency
6: .line 1170
iload 3 /* hasTransparency */
ifeq 39
aload 1 /* bufferedImage */
ifnull 39
7: .line 1171
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getType:()I
iconst_2
if_icmpeq 9
8: .line 1172
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getType:()I
iconst_3
if_icmpne 39
9: .line 1173
StackMap locals: int
StackMap stack:
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.getDataBuffer:()Ljava/awt/image/DataBuffer;
astore 4 /* db */
start local 4 // java.awt.image.DataBuffer db
10: .line 1174
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
invokevirtual java.awt.image.WritableRaster.getSampleModel:()Ljava/awt/image/SampleModel;
astore 5 /* sm */
start local 5 // java.awt.image.SampleModel sm
11: .line 1175
aload 4 /* db */
instanceof java.awt.image.DataBufferInt
ifeq 39
12: .line 1176
aload 5 /* sm */
instanceof java.awt.image.SinglePixelPackedSampleModel
ifeq 39
13: .line 1178
aload 5 /* sm */
checkcast java.awt.image.SinglePixelPackedSampleModel
14: .line 1177
astore 6 /* psm */
start local 6 // java.awt.image.SinglePixelPackedSampleModel psm
15: .line 1181
aload 4 /* db */
checkcast java.awt.image.DataBufferInt
iconst_0
invokestatic sun.awt.image.SunWritableRaster.stealData:(Ljava/awt/image/DataBufferInt;I)[I
16: .line 1180
astore 7 /* int_data */
start local 7 // int[] int_data
17: .line 1182
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getMinX:()I
istore 8 /* x */
start local 8 // int x
18: .line 1183
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getMinY:()I
istore 9 /* y */
start local 9 // int y
19: .line 1184
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getWidth:()I
istore 10 /* w */
start local 10 // int w
20: .line 1185
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getHeight:()I
istore 11 /* h */
start local 11 // int h
21: .line 1186
aload 6 /* psm */
invokevirtual java.awt.image.SinglePixelPackedSampleModel.getScanlineStride:()I
istore 12 /* stride */
start local 12 // int stride
22: .line 1187
iconst_0
istore 13 /* hastranspixel */
start local 13 // boolean hastranspixel
23: .line 1188
iload 9 /* y */
istore 14 /* j */
start local 14 // int j
24: goto 36
25: .line 1189
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.image.ColorModel int java.awt.image.DataBuffer java.awt.image.SampleModel java.awt.image.SinglePixelPackedSampleModel int[] int int int int int int int
StackMap stack:
iload 14 /* j */
iload 12 /* stride */
imul
istore 15 /* yoff */
start local 15 // int yoff
26: .line 1190
iload 8 /* x */
istore 16 /* i */
start local 16 // int i
27: goto 32
28: .line 1191
StackMap locals: int int
StackMap stack:
aload 7 /* int_data */
iload 15 /* yoff */
iload 16 /* i */
iadd
iaload
ldc -16777216
iand
ldc -16777216
if_icmpeq 31
29: .line 1192
iconst_1
istore 13 /* hastranspixel */
30: .line 1193
goto 33
31: .line 1190
StackMap locals:
StackMap stack:
iinc 16 /* i */ 1
StackMap locals:
StackMap stack:
32: iload 16 /* i */
iload 8 /* x */
iload 10 /* w */
iadd
if_icmplt 28
end local 16 // int i
33: .line 1196
StackMap locals:
StackMap stack:
iload 13 /* hastranspixel */
ifeq 35
34: .line 1197
goto 37
end local 15 // int yoff
35: .line 1188
StackMap locals:
StackMap stack:
iinc 14 /* j */ 1
StackMap locals:
StackMap stack:
36: iload 14 /* j */
iload 9 /* y */
iload 11 /* h */
iadd
if_icmplt 25
end local 14 // int j
37: .line 1200
StackMap locals:
StackMap stack:
iload 13 /* hastranspixel */
ifne 39
38: .line 1201
iconst_0
istore 3 /* hasTransparency */
end local 13 // boolean hastranspixel
end local 12 // int stride
end local 11 // int h
end local 10 // int w
end local 9 // int y
end local 8 // int x
end local 7 // int[] int_data
end local 6 // java.awt.image.SinglePixelPackedSampleModel psm
end local 5 // java.awt.image.SampleModel sm
end local 4 // java.awt.image.DataBuffer db
39: .line 1207
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.image.ColorModel int
StackMap stack:
iload 3 /* hasTransparency */
ireturn
end local 3 // boolean hasTransparency
end local 2 // java.awt.image.ColorModel colorModel
end local 1 // java.awt.image.BufferedImage bufferedImage
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 40 0 this Lsun/print/PathGraphics;
0 40 1 bufferedImage Ljava/awt/image/BufferedImage;
1 40 2 colorModel Ljava/awt/image/ColorModel;
6 40 3 hasTransparency Z
10 39 4 db Ljava/awt/image/DataBuffer;
11 39 5 sm Ljava/awt/image/SampleModel;
15 39 6 psm Ljava/awt/image/SinglePixelPackedSampleModel;
17 39 7 int_data [I
18 39 8 x I
19 39 9 y I
20 39 10 w I
21 39 11 h I
22 39 12 stride I
23 39 13 hastranspixel Z
24 37 14 j I
26 35 15 yoff I
27 33 16 i I
MethodParameters:
Name Flags
bufferedImage
protected boolean isBitmaskTransparency(java.awt.image.BufferedImage);
descriptor: (Ljava/awt/image/BufferedImage;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=2
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.image.BufferedImage bufferedImage
0: .line 1211
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 2 /* colorModel */
start local 2 // java.awt.image.ColorModel colorModel
1: .line 1212
aload 2 /* colorModel */
ifnull 4
2: .line 1213
aload 2 /* colorModel */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_2
if_icmpne 4
3: .line 1212
iconst_1
ireturn
StackMap locals: java.awt.image.ColorModel
StackMap stack:
4: iconst_0
ireturn
end local 2 // java.awt.image.ColorModel colorModel
end local 1 // java.awt.image.BufferedImage bufferedImage
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 bufferedImage Ljava/awt/image/BufferedImage;
1 5 2 colorModel Ljava/awt/image/ColorModel;
MethodParameters:
Name Flags
bufferedImage
protected boolean drawBitmaskImage(java.awt.image.BufferedImage, java.awt.geom.AffineTransform, java.awt.Color, int, int, int, int);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIII)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=9, locals=23, args_size=8
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.image.BufferedImage bufferedImage
start local 2 // java.awt.geom.AffineTransform xform
start local 3 // java.awt.Color bgcolor
start local 4 // int srcX
start local 5 // int srcY
start local 6 // int srcWidth
start local 7 // int srcHeight
0: .line 1226
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getColorModel:()Ljava/awt/image/ColorModel;
astore 8 /* colorModel */
start local 8 // java.awt.image.ColorModel colorModel
1: .line 1230
aload 8 /* colorModel */
instanceof java.awt.image.IndexColorModel
ifne 3
2: .line 1231
iconst_0
ireturn
3: .line 1233
StackMap locals: java.awt.image.ColorModel
StackMap stack:
aload 8 /* colorModel */
checkcast java.awt.image.IndexColorModel
astore 9 /* icm */
start local 9 // java.awt.image.IndexColorModel icm
4: .line 1236
aload 8 /* colorModel */
invokevirtual java.awt.image.ColorModel.getTransparency:()I
iconst_2
if_icmpeq 6
5: .line 1237
iconst_0
ireturn
6: .line 1242
StackMap locals: java.awt.image.IndexColorModel
StackMap stack:
aload 3 /* bgcolor */
ifnull 8
aload 3 /* bgcolor */
invokevirtual java.awt.Color.getAlpha:()I
sipush 128
if_icmpge 8
7: .line 1243
iconst_0
ireturn
8: .line 1246
StackMap locals:
StackMap stack:
aload 2 /* xform */
invokevirtual java.awt.geom.AffineTransform.getType:()I
9: .line 1247
bipush -12
10: .line 1246
iand
ifeq 12
11: .line 1251
iconst_0
ireturn
12: .line 1254
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual sun.print.PathGraphics.getTransform:()Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.getType:()I
13: .line 1255
bipush -12
14: .line 1254
iand
ifeq 16
15: .line 1259
iconst_0
ireturn
16: .line 1262
StackMap locals:
StackMap stack:
aconst_null
astore 11 /* subImage */
start local 11 // java.awt.image.BufferedImage subImage
17: .line 1263
aload 1 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.getRaster:()Ljava/awt/image/WritableRaster;
astore 12 /* raster */
start local 12 // java.awt.image.Raster raster
18: .line 1264
aload 9 /* icm */
invokevirtual java.awt.image.IndexColorModel.getTransparentPixel:()I
istore 13 /* transpixel */
start local 13 // int transpixel
19: .line 1265
aload 9 /* icm */
invokevirtual java.awt.image.IndexColorModel.getMapSize:()I
newarray 8
astore 14 /* alphas */
start local 14 // byte[] alphas
20: .line 1266
aload 9 /* icm */
aload 14 /* alphas */
invokevirtual java.awt.image.IndexColorModel.getAlphas:([B)V
21: .line 1267
iload 13 /* transpixel */
iflt 23
22: .line 1268
aload 14 /* alphas */
iload 13 /* transpixel */
iconst_0
bastore
23: .line 1275
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.geom.AffineTransform java.awt.Color int int int int java.awt.image.ColorModel java.awt.image.IndexColorModel top java.awt.image.BufferedImage java.awt.image.Raster int byte[]
StackMap stack:
aload 12 /* raster */
invokevirtual java.awt.image.Raster.getWidth:()I
istore 15 /* rw */
start local 15 // int rw
24: .line 1276
aload 12 /* raster */
invokevirtual java.awt.image.Raster.getHeight:()I
istore 16 /* rh */
start local 16 // int rh
25: .line 1277
iload 4 /* srcX */
iload 15 /* rw */
if_icmpgt 26
iload 5 /* srcY */
iload 16 /* rh */
if_icmple 27
26: .line 1278
StackMap locals: int int
StackMap stack:
iconst_0
ireturn
27: .line 1281
StackMap locals:
StackMap stack:
iload 4 /* srcX */
iload 6 /* srcWidth */
iadd
iload 15 /* rw */
if_icmple 31
28: .line 1282
iload 15 /* rw */
istore 17 /* right */
start local 17 // int right
29: .line 1283
iload 17 /* right */
iload 4 /* srcX */
isub
istore 19 /* wid */
start local 19 // int wid
30: .line 1284
goto 33
end local 19 // int wid
end local 17 // int right
31: .line 1285
StackMap locals:
StackMap stack:
iload 4 /* srcX */
iload 6 /* srcWidth */
iadd
istore 17 /* right */
start local 17 // int right
32: .line 1286
iload 6 /* srcWidth */
istore 19 /* wid */
start local 19 // int wid
33: .line 1288
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.geom.AffineTransform java.awt.Color int int int int java.awt.image.ColorModel java.awt.image.IndexColorModel top java.awt.image.BufferedImage java.awt.image.Raster int byte[] int int int top int
StackMap stack:
iload 5 /* srcY */
iload 7 /* srcHeight */
iadd
iload 16 /* rh */
if_icmple 37
34: .line 1289
iload 16 /* rh */
istore 18 /* bottom */
start local 18 // int bottom
35: .line 1290
iload 18 /* bottom */
iload 5 /* srcY */
isub
pop
36: .line 1291
goto 39
end local 18 // int bottom
37: .line 1292
StackMap locals:
StackMap stack:
iload 5 /* srcY */
iload 7 /* srcHeight */
iadd
istore 18 /* bottom */
start local 18 // int bottom
38: .line 1293
iload 7 /* srcHeight */
pop
39: .line 1295
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.geom.AffineTransform java.awt.Color int int int int java.awt.image.ColorModel java.awt.image.IndexColorModel top java.awt.image.BufferedImage java.awt.image.Raster int byte[] int int int int int
StackMap stack:
iload 19 /* wid */
newarray 10
astore 10 /* pixels */
start local 10 // int[] pixels
40: .line 1296
iload 5 /* srcY */
istore 20 /* j */
start local 20 // int j
41: goto 72
42: .line 1297
StackMap locals: sun.print.PathGraphics java.awt.image.BufferedImage java.awt.geom.AffineTransform java.awt.Color int int int int java.awt.image.ColorModel java.awt.image.IndexColorModel int[] java.awt.image.BufferedImage java.awt.image.Raster int byte[] int int int int int int
StackMap stack:
iconst_m1
istore 21 /* startx */
start local 21 // int startx
43: .line 1298
aload 12 /* raster */
iload 4 /* srcX */
iload 20 /* j */
iload 19 /* wid */
iconst_1
aload 10 /* pixels */
invokevirtual java.awt.image.Raster.getPixels:(IIII[I)[I
pop
44: .line 1299
iload 4 /* srcX */
istore 22 /* i */
start local 22 // int i
45: goto 61
46: .line 1300
StackMap locals: int int
StackMap stack:
aload 14 /* alphas */
aload 10 /* pixels */
iload 22 /* i */
iload 4 /* srcX */
isub
iaload
baload
ifne 58
47: .line 1301
iload 21 /* startx */
iflt 60
48: .line 1302
aload 1 /* bufferedImage */
iload 21 /* startx */
iload 20 /* j */
49: .line 1303
iload 22 /* i */
iload 21 /* startx */
isub
iconst_1
50: .line 1302
invokevirtual java.awt.image.BufferedImage.getSubimage:(IIII)Ljava/awt/image/BufferedImage;
astore 11 /* subImage */
51: .line 1304
aload 2 /* xform */
iload 21 /* startx */
i2d
iload 20 /* j */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
52: .line 1305
aload 0 /* this */
aload 11 /* subImage */
aload 2 /* xform */
aload 3 /* bgcolor */
53: .line 1306
iconst_0
iconst_0
iload 22 /* i */
iload 21 /* startx */
isub
iconst_1
iconst_1
54: .line 1305
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
pop
55: .line 1307
aload 2 /* xform */
iload 21 /* startx */
ineg
i2d
iload 20 /* j */
ineg
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
56: .line 1308
iconst_m1
istore 21 /* startx */
57: .line 1310
goto 60
StackMap locals:
StackMap stack:
58: iload 21 /* startx */
ifge 60
59: .line 1311
iload 22 /* i */
istore 21 /* startx */
60: .line 1299
StackMap locals:
StackMap stack:
iinc 22 /* i */ 1
StackMap locals:
StackMap stack:
61: iload 22 /* i */
iload 17 /* right */
if_icmplt 46
end local 22 // int i
62: .line 1314
iload 21 /* startx */
iflt 71
63: .line 1315
aload 1 /* bufferedImage */
iload 21 /* startx */
iload 20 /* j */
64: .line 1316
iload 17 /* right */
iload 21 /* startx */
isub
iconst_1
65: .line 1315
invokevirtual java.awt.image.BufferedImage.getSubimage:(IIII)Ljava/awt/image/BufferedImage;
astore 11 /* subImage */
66: .line 1317
aload 2 /* xform */
iload 21 /* startx */
i2d
iload 20 /* j */
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
67: .line 1318
aload 0 /* this */
aload 11 /* subImage */
aload 2 /* xform */
aload 3 /* bgcolor */
68: .line 1319
iconst_0
iconst_0
iload 17 /* right */
iload 21 /* startx */
isub
iconst_1
iconst_1
69: .line 1318
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
pop
70: .line 1320
aload 2 /* xform */
iload 21 /* startx */
ineg
i2d
iload 20 /* j */
ineg
i2d
invokevirtual java.awt.geom.AffineTransform.translate:(DD)V
end local 21 // int startx
71: .line 1296
StackMap locals:
StackMap stack:
iinc 20 /* j */ 1
StackMap locals:
StackMap stack:
72: iload 20 /* j */
iload 18 /* bottom */
if_icmplt 42
end local 20 // int j
73: .line 1323
iconst_1
ireturn
end local 19 // int wid
end local 18 // int bottom
end local 17 // int right
end local 16 // int rh
end local 15 // int rw
end local 14 // byte[] alphas
end local 13 // int transpixel
end local 12 // java.awt.image.Raster raster
end local 11 // java.awt.image.BufferedImage subImage
end local 10 // int[] pixels
end local 9 // java.awt.image.IndexColorModel icm
end local 8 // java.awt.image.ColorModel colorModel
end local 7 // int srcHeight
end local 6 // int srcWidth
end local 5 // int srcY
end local 4 // int srcX
end local 3 // java.awt.Color bgcolor
end local 2 // java.awt.geom.AffineTransform xform
end local 1 // java.awt.image.BufferedImage bufferedImage
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 74 0 this Lsun/print/PathGraphics;
0 74 1 bufferedImage Ljava/awt/image/BufferedImage;
0 74 2 xform Ljava/awt/geom/AffineTransform;
0 74 3 bgcolor Ljava/awt/Color;
0 74 4 srcX I
0 74 5 srcY I
0 74 6 srcWidth I
0 74 7 srcHeight I
1 74 8 colorModel Ljava/awt/image/ColorModel;
4 74 9 icm Ljava/awt/image/IndexColorModel;
40 74 10 pixels [I
17 74 11 subImage Ljava/awt/image/BufferedImage;
18 74 12 raster Ljava/awt/image/Raster;
19 74 13 transpixel I
20 74 14 alphas [B
24 74 15 rw I
25 74 16 rh I
29 31 17 right I
32 74 17 right I
35 37 18 bottom I
38 74 18 bottom I
30 31 19 wid I
33 74 19 wid I
41 73 20 j I
43 71 21 startx I
45 62 22 i I
MethodParameters:
Name Flags
bufferedImage
xform
bgcolor
srcX
srcY
srcWidth
srcHeight
protected abstract boolean drawImageToPlatform(java.awt.Image, java.awt.geom.AffineTransform, java.awt.Color, int, int, int, int, boolean);
descriptor: (Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
MethodParameters:
Name Flags
img
xform
bgcolor
srcX
srcY
srcWidth
srcHeight
handlingTransparency
public boolean drawImage(java.awt.Image, int, int, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IILjava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int x
start local 3 // int y
start local 4 // java.awt.image.ImageObserver observer
0: .line 1392
aload 0 /* this */
aload 1 /* img */
iload 2 /* x */
iload 3 /* y */
aconst_null
aload 4 /* observer */
invokevirtual sun.print.PathGraphics.drawImage:(Ljava/awt/Image;IILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 4 // java.awt.image.ImageObserver observer
end local 3 // int y
end local 2 // int x
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
0 1 1 img Ljava/awt/Image;
0 1 2 x I
0 1 3 y I
0 1 4 observer Ljava/awt/image/ImageObserver;
MethodParameters:
Name Flags
img
x
y
observer
public boolean drawImage(java.awt.Image, int, int, int, int, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IIIILjava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=7, args_size=7
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int x
start local 3 // int y
start local 4 // int width
start local 5 // int height
start local 6 // java.awt.image.ImageObserver observer
0: .line 1433
aload 0 /* this */
aload 1 /* img */
iload 2 /* x */
iload 3 /* y */
iload 4 /* width */
iload 5 /* height */
aconst_null
aload 6 /* observer */
invokevirtual sun.print.PathGraphics.drawImage:(Ljava/awt/Image;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 6 // java.awt.image.ImageObserver observer
end local 5 // int height
end local 4 // int width
end local 3 // int y
end local 2 // int x
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/print/PathGraphics;
0 1 1 img Ljava/awt/Image;
0 1 2 x I
0 1 3 y I
0 1 4 width I
0 1 5 height I
0 1 6 observer Ljava/awt/image/ImageObserver;
MethodParameters:
Name Flags
img
x
y
width
height
observer
public boolean drawImage(java.awt.Image, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=9, args_size=6
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int x
start local 3 // int y
start local 4 // java.awt.Color bgcolor
start local 5 // java.awt.image.ImageObserver observer
0: .line 1477
aload 1 /* img */
ifnonnull 2
1: .line 1478
iconst_1
ireturn
2: .line 1482
StackMap locals:
StackMap stack:
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 7 /* srcWidth */
start local 7 // int srcWidth
3: .line 1483
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 8 /* srcHeight */
start local 8 // int srcHeight
4: .line 1485
iload 7 /* srcWidth */
iflt 5
iload 8 /* srcHeight */
ifge 7
5: .line 1486
StackMap locals: sun.print.PathGraphics java.awt.Image int int java.awt.Color java.awt.image.ImageObserver top int int
StackMap stack:
iconst_0
istore 6 /* result */
start local 6 // boolean result
6: .line 1487
goto 8
end local 6 // boolean result
7: .line 1488
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* img */
iload 2 /* x */
iload 3 /* y */
iload 7 /* srcWidth */
iload 8 /* srcHeight */
aload 4 /* bgcolor */
aload 5 /* observer */
invokevirtual sun.print.PathGraphics.drawImage:(Ljava/awt/Image;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
istore 6 /* result */
start local 6 // boolean result
8: .line 1491
StackMap locals: sun.print.PathGraphics java.awt.Image int int java.awt.Color java.awt.image.ImageObserver int int int
StackMap stack:
iload 6 /* result */
ireturn
end local 8 // int srcHeight
end local 7 // int srcWidth
end local 6 // boolean result
end local 5 // java.awt.image.ImageObserver observer
end local 4 // java.awt.Color bgcolor
end local 3 // int y
end local 2 // int x
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lsun/print/PathGraphics;
0 9 1 img Ljava/awt/Image;
0 9 2 x I
0 9 3 y I
0 9 4 bgcolor Ljava/awt/Color;
0 9 5 observer Ljava/awt/image/ImageObserver;
6 7 6 result Z
8 9 6 result Z
3 9 7 srcWidth I
4 9 8 srcHeight I
MethodParameters:
Name Flags
img
x
y
bgcolor
observer
public boolean drawImage(java.awt.Image, int, int, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=11, args_size=8
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int x
start local 3 // int y
start local 4 // int width
start local 5 // int height
start local 6 // java.awt.Color bgcolor
start local 7 // java.awt.image.ImageObserver observer
0: .line 1539
aload 1 /* img */
ifnonnull 2
1: .line 1540
iconst_1
ireturn
2: .line 1544
StackMap locals:
StackMap stack:
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 9 /* srcWidth */
start local 9 // int srcWidth
3: .line 1545
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 10 /* srcHeight */
start local 10 // int srcHeight
4: .line 1547
iload 9 /* srcWidth */
iflt 5
iload 10 /* srcHeight */
ifge 7
5: .line 1548
StackMap locals: sun.print.PathGraphics java.awt.Image int int int int java.awt.Color java.awt.image.ImageObserver top int int
StackMap stack:
iconst_0
istore 8 /* result */
start local 8 // boolean result
6: .line 1549
goto 12
end local 8 // boolean result
7: .line 1550
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* img */
8: .line 1551
iload 2 /* x */
iload 3 /* y */
iload 2 /* x */
iload 4 /* width */
iadd
iload 3 /* y */
iload 5 /* height */
iadd
9: .line 1552
iconst_0
iconst_0
iload 9 /* srcWidth */
iload 10 /* srcHeight */
10: .line 1553
aload 7 /* observer */
11: .line 1550
invokevirtual sun.print.PathGraphics.drawImage:(Ljava/awt/Image;IIIIIIIILjava/awt/image/ImageObserver;)Z
istore 8 /* result */
start local 8 // boolean result
12: .line 1556
StackMap locals: sun.print.PathGraphics java.awt.Image int int int int java.awt.Color java.awt.image.ImageObserver int int int
StackMap stack:
iload 8 /* result */
ireturn
end local 10 // int srcHeight
end local 9 // int srcWidth
end local 8 // boolean result
end local 7 // java.awt.image.ImageObserver observer
end local 6 // java.awt.Color bgcolor
end local 5 // int height
end local 4 // int width
end local 3 // int y
end local 2 // int x
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/print/PathGraphics;
0 13 1 img Ljava/awt/Image;
0 13 2 x I
0 13 3 y I
0 13 4 width I
0 13 5 height I
0 13 6 bgcolor Ljava/awt/Color;
0 13 7 observer Ljava/awt/image/ImageObserver;
6 7 8 result Z
12 13 8 result Z
3 13 9 srcWidth I
4 13 10 srcHeight I
MethodParameters:
Name Flags
img
x
y
width
height
bgcolor
observer
public boolean drawImage(java.awt.Image, int, int, int, int, int, int, int, int, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IIIIIIIILjava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=12, locals=11, args_size=11
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int dx1
start local 3 // int dy1
start local 4 // int dx2
start local 5 // int dy2
start local 6 // int sx1
start local 7 // int sy1
start local 8 // int sx2
start local 9 // int sy2
start local 10 // java.awt.image.ImageObserver observer
0: .line 1611
aload 0 /* this */
aload 1 /* img */
1: .line 1612
iload 2 /* dx1 */
iload 3 /* dy1 */
iload 4 /* dx2 */
iload 5 /* dy2 */
2: .line 1613
iload 6 /* sx1 */
iload 7 /* sy1 */
iload 8 /* sx2 */
iload 9 /* sy2 */
3: .line 1614
aconst_null
aload 10 /* observer */
4: .line 1611
invokevirtual sun.print.PathGraphics.drawImage:(Ljava/awt/Image;IIIIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
ireturn
end local 10 // java.awt.image.ImageObserver observer
end local 9 // int sy2
end local 8 // int sx2
end local 7 // int sy1
end local 6 // int sx1
end local 5 // int dy2
end local 4 // int dx2
end local 3 // int dy1
end local 2 // int dx1
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lsun/print/PathGraphics;
0 5 1 img Ljava/awt/Image;
0 5 2 dx1 I
0 5 3 dy1 I
0 5 4 dx2 I
0 5 5 dy2 I
0 5 6 sx1 I
0 5 7 sy1 I
0 5 8 sx2 I
0 5 9 sy2 I
0 5 10 observer Ljava/awt/image/ImageObserver;
MethodParameters:
Name Flags
img
dx1
dy1
dx2
dy2
sx1
sy1
sx2
sy2
observer
public boolean drawImage(java.awt.Image, int, int, int, int, int, int, int, int, java.awt.Color, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;IIIIIIIILjava/awt/Color;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=10, locals=20, args_size=12
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // int dx1
start local 3 // int dy1
start local 4 // int dx2
start local 5 // int dy2
start local 6 // int sx1
start local 7 // int sy1
start local 8 // int sx2
start local 9 // int sy2
start local 10 // java.awt.Color bgcolor
start local 11 // java.awt.image.ImageObserver observer
0: .line 1677
aload 1 /* img */
ifnonnull 2
1: .line 1678
iconst_1
ireturn
2: .line 1680
StackMap locals:
StackMap stack:
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 12 /* imgWidth */
start local 12 // int imgWidth
3: .line 1681
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 13 /* imgHeight */
start local 13 // int imgHeight
4: .line 1683
iload 12 /* imgWidth */
iflt 5
iload 13 /* imgHeight */
ifge 6
5: .line 1684
StackMap locals: int int
StackMap stack:
iconst_1
ireturn
6: .line 1687
StackMap locals:
StackMap stack:
iload 8 /* sx2 */
iload 6 /* sx1 */
isub
istore 14 /* srcWidth */
start local 14 // int srcWidth
7: .line 1688
iload 9 /* sy2 */
iload 7 /* sy1 */
isub
istore 15 /* srcHeight */
start local 15 // int srcHeight
8: .line 1696
iload 4 /* dx2 */
iload 2 /* dx1 */
isub
i2f
iload 14 /* srcWidth */
i2f
fdiv
fstore 16 /* scalex */
start local 16 // float scalex
9: .line 1697
iload 5 /* dy2 */
iload 3 /* dy1 */
isub
i2f
iload 15 /* srcHeight */
i2f
fdiv
fstore 17 /* scaley */
start local 17 // float scaley
10: .line 1699
new java.awt.geom.AffineTransform
dup
fload 16 /* scalex */
11: .line 1700
fconst_0
12: .line 1701
fconst_0
13: .line 1702
fload 17 /* scaley */
14: .line 1703
iload 2 /* dx1 */
i2f
iload 6 /* sx1 */
i2f
fload 16 /* scalex */
fmul
fsub
15: .line 1704
iload 3 /* dy1 */
i2f
iload 7 /* sy1 */
i2f
fload 17 /* scaley */
fmul
fsub
16: .line 1699
invokespecial java.awt.geom.AffineTransform.<init>:(FFFFFF)V
17: .line 1698
astore 18 /* xForm */
start local 18 // java.awt.geom.AffineTransform xForm
18: .line 1710
iconst_0
istore 19 /* tmp */
start local 19 // int tmp
19: .line 1711
iload 8 /* sx2 */
iload 6 /* sx1 */
if_icmpge 23
20: .line 1712
iload 6 /* sx1 */
istore 19 /* tmp */
21: .line 1713
iload 8 /* sx2 */
istore 6 /* sx1 */
22: .line 1714
iload 19 /* tmp */
istore 8 /* sx2 */
23: .line 1716
StackMap locals: sun.print.PathGraphics java.awt.Image int int int int int int int int java.awt.Color java.awt.image.ImageObserver int int int int float float java.awt.geom.AffineTransform int
StackMap stack:
iload 9 /* sy2 */
iload 7 /* sy1 */
if_icmpge 27
24: .line 1717
iload 7 /* sy1 */
istore 19 /* tmp */
25: .line 1718
iload 9 /* sy2 */
istore 7 /* sy1 */
26: .line 1719
iload 19 /* tmp */
istore 9 /* sy2 */
27: .line 1725
StackMap locals:
StackMap stack:
iload 6 /* sx1 */
ifge 30
28: .line 1726
iconst_0
istore 6 /* sx1 */
29: .line 1727
goto 32
StackMap locals:
StackMap stack:
30: iload 6 /* sx1 */
iload 12 /* imgWidth */
if_icmple 32
31: .line 1728
iload 12 /* imgWidth */
istore 6 /* sx1 */
32: .line 1730
StackMap locals:
StackMap stack:
iload 8 /* sx2 */
ifge 35
33: .line 1731
iconst_0
istore 8 /* sx2 */
34: .line 1732
goto 37
StackMap locals:
StackMap stack:
35: iload 8 /* sx2 */
iload 12 /* imgWidth */
if_icmple 37
36: .line 1733
iload 12 /* imgWidth */
istore 8 /* sx2 */
37: .line 1735
StackMap locals:
StackMap stack:
iload 7 /* sy1 */
ifge 40
38: .line 1736
iconst_0
istore 7 /* sy1 */
39: .line 1737
goto 42
StackMap locals:
StackMap stack:
40: iload 7 /* sy1 */
iload 13 /* imgHeight */
if_icmple 42
41: .line 1738
iload 13 /* imgHeight */
istore 7 /* sy1 */
42: .line 1740
StackMap locals:
StackMap stack:
iload 9 /* sy2 */
ifge 45
43: .line 1741
iconst_0
istore 9 /* sy2 */
44: .line 1742
goto 47
StackMap locals:
StackMap stack:
45: iload 9 /* sy2 */
iload 13 /* imgHeight */
if_icmple 47
46: .line 1743
iload 13 /* imgHeight */
istore 9 /* sy2 */
47: .line 1746
StackMap locals:
StackMap stack:
iload 8 /* sx2 */
iload 6 /* sx1 */
isub
istore 14 /* srcWidth */
48: .line 1747
iload 9 /* sy2 */
iload 7 /* sy1 */
isub
istore 15 /* srcHeight */
49: .line 1749
iload 14 /* srcWidth */
ifle 50
iload 15 /* srcHeight */
ifgt 51
50: .line 1750
StackMap locals:
StackMap stack:
iconst_1
ireturn
51: .line 1753
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* img */
aload 18 /* xForm */
aload 10 /* bgcolor */
52: .line 1754
iload 6 /* sx1 */
iload 7 /* sy1 */
iload 14 /* srcWidth */
iload 15 /* srcHeight */
iconst_0
53: .line 1753
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
ireturn
end local 19 // int tmp
end local 18 // java.awt.geom.AffineTransform xForm
end local 17 // float scaley
end local 16 // float scalex
end local 15 // int srcHeight
end local 14 // int srcWidth
end local 13 // int imgHeight
end local 12 // int imgWidth
end local 11 // java.awt.image.ImageObserver observer
end local 10 // java.awt.Color bgcolor
end local 9 // int sy2
end local 8 // int sx2
end local 7 // int sy1
end local 6 // int sx1
end local 5 // int dy2
end local 4 // int dx2
end local 3 // int dy1
end local 2 // int dx1
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 54 0 this Lsun/print/PathGraphics;
0 54 1 img Ljava/awt/Image;
0 54 2 dx1 I
0 54 3 dy1 I
0 54 4 dx2 I
0 54 5 dy2 I
0 54 6 sx1 I
0 54 7 sy1 I
0 54 8 sx2 I
0 54 9 sy2 I
0 54 10 bgcolor Ljava/awt/Color;
0 54 11 observer Ljava/awt/image/ImageObserver;
3 54 12 imgWidth I
4 54 13 imgHeight I
7 54 14 srcWidth I
8 54 15 srcHeight I
9 54 16 scalex F
10 54 17 scaley F
18 54 18 xForm Ljava/awt/geom/AffineTransform;
19 54 19 tmp I
MethodParameters:
Name Flags
img
dx1
dy1
dx2
dy2
sx1
sy1
sx2
sy2
bgcolor
observer
public boolean drawImage(java.awt.Image, java.awt.geom.AffineTransform, java.awt.image.ImageObserver);
descriptor: (Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/image/ImageObserver;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=4
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.Image img
start local 2 // java.awt.geom.AffineTransform xform
start local 3 // java.awt.image.ImageObserver obs
0: .line 1784
aload 1 /* img */
ifnonnull 2
1: .line 1785
iconst_1
ireturn
2: .line 1789
StackMap locals:
StackMap stack:
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 5 /* srcWidth */
start local 5 // int srcWidth
3: .line 1790
aload 1 /* img */
aconst_null
invokevirtual java.awt.Image.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 6 /* srcHeight */
start local 6 // int srcHeight
4: .line 1792
iload 5 /* srcWidth */
iflt 5
iload 6 /* srcHeight */
ifge 7
5: .line 1793
StackMap locals: sun.print.PathGraphics java.awt.Image java.awt.geom.AffineTransform java.awt.image.ImageObserver top int int
StackMap stack:
iconst_0
istore 4 /* result */
start local 4 // boolean result
6: .line 1794
goto 10
end local 4 // boolean result
7: .line 1795
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 1 /* img */
aload 2 /* xform */
aconst_null
8: .line 1796
iconst_0
iconst_0
iload 5 /* srcWidth */
iload 6 /* srcHeight */
iconst_0
9: .line 1795
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
istore 4 /* result */
start local 4 // boolean result
10: .line 1799
StackMap locals: sun.print.PathGraphics java.awt.Image java.awt.geom.AffineTransform java.awt.image.ImageObserver int int int
StackMap stack:
iload 4 /* result */
ireturn
end local 6 // int srcHeight
end local 5 // int srcWidth
end local 4 // boolean result
end local 3 // java.awt.image.ImageObserver obs
end local 2 // java.awt.geom.AffineTransform xform
end local 1 // java.awt.Image img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lsun/print/PathGraphics;
0 11 1 img Ljava/awt/Image;
0 11 2 xform Ljava/awt/geom/AffineTransform;
0 11 3 obs Ljava/awt/image/ImageObserver;
6 7 4 result Z
10 11 4 result Z
3 11 5 srcWidth I
4 11 6 srcHeight I
MethodParameters:
Name Flags
img
xform
obs
public void drawImage(java.awt.image.BufferedImage, java.awt.image.BufferedImageOp, int, int);
descriptor: (Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImageOp;II)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=8, args_size=5
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.image.BufferedImage img
start local 2 // java.awt.image.BufferedImageOp op
start local 3 // int x
start local 4 // int y
0: .line 1825
aload 1 /* img */
ifnonnull 2
1: .line 1826
return
2: .line 1829
StackMap locals:
StackMap stack:
aload 1 /* img */
aconst_null
invokevirtual java.awt.image.BufferedImage.getWidth:(Ljava/awt/image/ImageObserver;)I
istore 5 /* srcWidth */
start local 5 // int srcWidth
3: .line 1830
aload 1 /* img */
aconst_null
invokevirtual java.awt.image.BufferedImage.getHeight:(Ljava/awt/image/ImageObserver;)I
istore 6 /* srcHeight */
start local 6 // int srcHeight
4: .line 1832
aload 2 /* op */
ifnull 6
5: .line 1833
aload 2 /* op */
aload 1 /* img */
aconst_null
invokeinterface java.awt.image.BufferedImageOp.filter:(Ljava/awt/image/BufferedImage;Ljava/awt/image/BufferedImage;)Ljava/awt/image/BufferedImage;
astore 1 /* img */
6: .line 1835
StackMap locals: int int
StackMap stack:
iload 5 /* srcWidth */
ifle 7
iload 6 /* srcHeight */
ifgt 8
7: .line 1836
StackMap locals:
StackMap stack:
return
8: .line 1838
StackMap locals:
StackMap stack:
new java.awt.geom.AffineTransform
dup
fconst_1
fconst_0
fconst_0
fconst_1
iload 3 /* x */
i2f
iload 4 /* y */
i2f
invokespecial java.awt.geom.AffineTransform.<init>:(FFFFFF)V
astore 7 /* xform */
start local 7 // java.awt.geom.AffineTransform xform
9: .line 1839
aload 0 /* this */
aload 1 /* img */
aload 7 /* xform */
aconst_null
10: .line 1840
iconst_0
iconst_0
iload 5 /* srcWidth */
iload 6 /* srcHeight */
iconst_0
11: .line 1839
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
pop
end local 7 // java.awt.geom.AffineTransform xform
12: .line 1843
return
end local 6 // int srcHeight
end local 5 // int srcWidth
end local 4 // int y
end local 3 // int x
end local 2 // java.awt.image.BufferedImageOp op
end local 1 // java.awt.image.BufferedImage img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/print/PathGraphics;
0 13 1 img Ljava/awt/image/BufferedImage;
0 13 2 op Ljava/awt/image/BufferedImageOp;
0 13 3 x I
0 13 4 y I
3 13 5 srcWidth I
4 13 6 srcHeight I
9 12 7 xform Ljava/awt/geom/AffineTransform;
MethodParameters:
Name Flags
img
op
x
y
public void drawRenderedImage(java.awt.image.RenderedImage, java.awt.geom.AffineTransform);
descriptor: (Ljava/awt/image/RenderedImage;Ljava/awt/geom/AffineTransform;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=7, args_size=3
start local 0 // sun.print.PathGraphics this
start local 1 // java.awt.image.RenderedImage img
start local 2 // java.awt.geom.AffineTransform xform
0: .line 1867
aload 1 /* img */
ifnonnull 2
1: .line 1868
return
2: .line 1871
StackMap locals:
StackMap stack:
aconst_null
astore 3 /* bufferedImage */
start local 3 // java.awt.image.BufferedImage bufferedImage
3: .line 1872
aload 1 /* img */
invokeinterface java.awt.image.RenderedImage.getWidth:()I
istore 4 /* srcWidth */
start local 4 // int srcWidth
4: .line 1873
aload 1 /* img */
invokeinterface java.awt.image.RenderedImage.getHeight:()I
istore 5 /* srcHeight */
start local 5 // int srcHeight
5: .line 1875
iload 4 /* srcWidth */
ifle 6
iload 5 /* srcHeight */
ifgt 7
6: .line 1876
StackMap locals: java.awt.image.BufferedImage int int
StackMap stack:
return
7: .line 1879
StackMap locals:
StackMap stack:
aload 1 /* img */
instanceof java.awt.image.BufferedImage
ifeq 10
8: .line 1880
aload 1 /* img */
checkcast java.awt.image.BufferedImage
astore 3 /* bufferedImage */
9: .line 1881
goto 15
10: .line 1882
StackMap locals:
StackMap stack:
new java.awt.image.BufferedImage
dup
iload 4 /* srcWidth */
iload 5 /* srcHeight */
11: .line 1883
iconst_2
12: .line 1882
invokespecial java.awt.image.BufferedImage.<init>:(III)V
astore 3 /* bufferedImage */
13: .line 1884
aload 3 /* bufferedImage */
invokevirtual java.awt.image.BufferedImage.createGraphics:()Ljava/awt/Graphics2D;
astore 6 /* imageGraphics */
start local 6 // java.awt.Graphics2D imageGraphics
14: .line 1885
aload 6 /* imageGraphics */
aload 1 /* img */
aload 2 /* xform */
invokevirtual java.awt.Graphics2D.drawRenderedImage:(Ljava/awt/image/RenderedImage;Ljava/awt/geom/AffineTransform;)V
end local 6 // java.awt.Graphics2D imageGraphics
15: .line 1888
StackMap locals:
StackMap stack:
aload 0 /* this */
aload 3 /* bufferedImage */
aload 2 /* xform */
aconst_null
16: .line 1889
iconst_0
iconst_0
iload 4 /* srcWidth */
iload 5 /* srcHeight */
iconst_0
17: .line 1888
invokevirtual sun.print.PathGraphics.drawImageToPlatform:(Ljava/awt/Image;Ljava/awt/geom/AffineTransform;Ljava/awt/Color;IIIIZ)Z
pop
18: .line 1891
return
end local 5 // int srcHeight
end local 4 // int srcWidth
end local 3 // java.awt.image.BufferedImage bufferedImage
end local 2 // java.awt.geom.AffineTransform xform
end local 1 // java.awt.image.RenderedImage img
end local 0 // sun.print.PathGraphics this
LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/print/PathGraphics;
0 19 1 img Ljava/awt/image/RenderedImage;
0 19 2 xform Ljava/awt/geom/AffineTransform;
3 19 3 bufferedImage Ljava/awt/image/BufferedImage;
4 19 4 srcWidth I
5 19 5 srcHeight I
14 15 6 imageGraphics Ljava/awt/Graphics2D;
MethodParameters:
Name Flags
img
xform
}
SourceFile: "PathGraphics.java"
InnerClasses:
public Float = java.awt.geom.Arc2D$Float of java.awt.geom.Arc2D
public Float = java.awt.geom.Ellipse2D$Float of java.awt.geom.Ellipse2D
public Float = java.awt.geom.Line2D$Float of java.awt.geom.Line2D
public Float = java.awt.geom.Path2D$Float of java.awt.geom.Path2D
public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D
public Float = java.awt.geom.RoundRectangle2D$Float of java.awt.geom.RoundRectangle2D