public class sun.font.FileFontStrike extends sun.font.PhysicalStrike
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.font.FileFontStrike
super_class: sun.font.PhysicalStrike
{
static final int INVISIBLE_GLYPHS;
descriptor: I
flags: (0x0018) ACC_STATIC, ACC_FINAL
ConstantValue: 65534
private sun.font.FileFont fileFont;
descriptor: Lsun/font/FileFont;
flags: (0x0002) ACC_PRIVATE
private static final int UNINITIALISED;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private static final int INTARRAY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1
private static final int LONGARRAY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 2
private static final int SEGINTARRAY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 3
private static final int SEGLONGARRAY;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 4
private volatile int glyphCacheFormat;
descriptor: I
flags: (0x0042) ACC_PRIVATE, ACC_VOLATILE
private static final int SEGSHIFT;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 8
private static final int SEGSIZE;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 256
private boolean segmentedCache;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int[][] segIntGlyphImages;
descriptor: [[I
flags: (0x0002) ACC_PRIVATE
private long[][] segLongGlyphImages;
descriptor: [[J
flags: (0x0002) ACC_PRIVATE
private float[] horizontalAdvances;
descriptor: [F
flags: (0x0002) ACC_PRIVATE
private float[][] segHorizontalAdvances;
descriptor: [[F
flags: (0x0002) ACC_PRIVATE
java.util.concurrent.ConcurrentHashMap<java.lang.Integer, java.awt.geom.Rectangle2D$Float> boundsMap;
descriptor: Ljava/util/concurrent/ConcurrentHashMap;
flags: (0x0000)
Signature: Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/Integer;Ljava/awt/geom/Rectangle2D$Float;>;
java.lang.ref.SoftReference<java.util.concurrent.ConcurrentHashMap<java.lang.Integer, java.awt.geom.Point2D$Float>> glyphMetricsMapRef;
descriptor: Ljava/lang/ref/SoftReference;
flags: (0x0000)
Signature: Ljava/lang/ref/SoftReference<Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/Integer;Ljava/awt/geom/Point2D$Float;>;>;
java.awt.geom.AffineTransform invertDevTx;
descriptor: Ljava/awt/geom/AffineTransform;
flags: (0x0000)
boolean useNatives;
descriptor: Z
flags: (0x0000)
sun.font.NativeStrike[] nativeStrikes;
descriptor: [Lsun/font/NativeStrike;
flags: (0x0000)
private int intPtSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private static boolean isXPorLater;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static final int SLOTZEROMAX;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 16777215
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
putstatic sun.font.FileFontStrike.isXPorLater:Z
1: getstatic sun.font.FontManager.isWindows:Z
ifeq 4
getstatic sun.font.FontManager.useT2K:Z
ifne 4
2: invokestatic java.awt.GraphicsEnvironment.isHeadless:()Z
ifne 4
3: invokestatic sun.font.FileFontStrike.initNative:()Z
putstatic sun.font.FileFontStrike.isXPorLater:Z
4: StackMap locals:
StackMap stack:
return
LocalVariableTable:
Start End Slot Name Signature
private static native boolean initNative();
descriptor: ()Z
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
void <init>(sun.font.FileFont, sun.font.FontStrikeDesc);
descriptor: (Lsun/font/FileFont;Lsun/font/FontStrikeDesc;)V
flags: (0x0000)
Code:
stack=8, locals=11, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial sun.font.PhysicalStrike.<init>:(Lsun/font/PhysicalFont;Lsun/font/FontStrikeDesc;)V
1: aload 0
iconst_0
putfield sun.font.FileFontStrike.glyphCacheFormat:I
2: aload 0
aload 1
putfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
3: aload 2
getfield sun.font.FontStrikeDesc.style:I
aload 1
getfield sun.font.FileFont.style:I
if_icmpeq 12
4: aload 2
getfield sun.font.FontStrikeDesc.style:I
iconst_2
iand
iconst_2
if_icmpne 8
5: aload 1
getfield sun.font.FileFont.style:I
iconst_2
iand
ifne 8
6: aload 0
iconst_1
putfield sun.font.FileFontStrike.algoStyle:Z
7: aload 0
ldc 0.7
putfield sun.font.FileFontStrike.italic:F
8: StackMap locals: sun.font.FileFontStrike sun.font.FileFont sun.font.FontStrikeDesc
StackMap stack:
aload 2
getfield sun.font.FontStrikeDesc.style:I
iconst_1
iand
iconst_1
if_icmpne 12
9: aload 1
getfield sun.font.FileFont.style:I
iconst_1
iand
ifne 12
10: aload 0
iconst_1
putfield sun.font.FileFontStrike.algoStyle:Z
11: aload 0
ldc 1.33
putfield sun.font.FileFontStrike.boldness:F
12: StackMap locals:
StackMap stack:
iconst_4
newarray 7
astore 3
start local 3 13: aload 2
getfield sun.font.FontStrikeDesc.glyphTx:Ljava/awt/geom/AffineTransform;
astore 4
start local 4 14: aload 4
aload 3
invokevirtual java.awt.geom.AffineTransform.getMatrix:([D)V
15: aload 2
getfield sun.font.FontStrikeDesc.devTx:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.isIdentity:()Z
ifne 20
16: aload 2
getfield sun.font.FontStrikeDesc.devTx:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.getType:()I
iconst_1
if_icmpeq 20
17: aload 0
aload 2
getfield sun.font.FontStrikeDesc.devTx:Ljava/awt/geom/AffineTransform;
invokevirtual java.awt.geom.AffineTransform.createInverse:()Ljava/awt/geom/AffineTransform;
putfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
18: goto 20
StackMap locals: sun.font.FileFontStrike sun.font.FileFont sun.font.FontStrikeDesc double[] java.awt.geom.AffineTransform
StackMap stack: java.awt.geom.NoninvertibleTransformException
19: pop
20: StackMap locals:
StackMap stack:
aload 3
iconst_0
daload
invokestatic java.lang.Double.isNaN:(D)Z
ifne 23
aload 3
iconst_1
daload
invokestatic java.lang.Double.isNaN:(D)Z
ifne 23
21: aload 3
iconst_2
daload
invokestatic java.lang.Double.isNaN:(D)Z
ifne 23
aload 3
iconst_3
daload
invokestatic java.lang.Double.isNaN:(D)Z
ifne 23
22: aload 1
invokevirtual sun.font.FileFont.getScaler:()Lsun/font/FontScaler;
ifnonnull 25
23: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.font.NullFontScaler.getNullScalerContext:()J
putfield sun.font.FileFontStrike.pScalerContext:J
24: goto 30
25: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.font.FileFont.getScaler:()Lsun/font/FontScaler;
aload 3
26: aload 1
instanceof sun.font.TrueTypeFont
27: aload 2
getfield sun.font.FontStrikeDesc.aaHint:I
aload 2
getfield sun.font.FontStrikeDesc.fmHint:I
28: aload 0
getfield sun.font.FileFontStrike.boldness:F
aload 0
getfield sun.font.FileFontStrike.italic:F
29: invokevirtual sun.font.FontScaler.createScalerContext:([DZIIFF)J
putfield sun.font.FileFontStrike.pScalerContext:J
30: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual sun.font.FileFont.getMapper:()Lsun/font/CharToGlyphMapper;
putfield sun.font.FileFontStrike.mapper:Lsun/font/CharToGlyphMapper;
31: aload 0
getfield sun.font.FileFontStrike.mapper:Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getNumGlyphs:()I
istore 5
start local 5 32: aload 3
iconst_3
daload
d2f
fstore 6
start local 6 33: aload 0
fload 6
f2i
dup_x1
putfield sun.font.FileFontStrike.intPtSize:I
istore 7
start local 7 34: aload 4
invokevirtual java.awt.geom.AffineTransform.getType:()I
bipush 124
iand
ifne 35
iconst_1
goto 36
StackMap locals: int float int
StackMap stack:
35: iconst_0
StackMap locals:
StackMap stack: int
36: istore 8
start local 8 37: aload 0
38: iload 5
sipush 2048
if_icmpgt 42
39: iload 5
sipush 512
if_icmple 41
40: iload 8
ifeq 42
fload 6
iload 7
i2f
fcmpl
ifne 42
iload 7
bipush 6
if_icmplt 42
iload 7
bipush 36
if_icmpgt 42
StackMap locals: sun.font.FileFontStrike sun.font.FileFont sun.font.FontStrikeDesc double[] java.awt.geom.AffineTransform int float int int
StackMap stack: sun.font.FileFontStrike
41: iconst_0
goto 43
StackMap locals:
StackMap stack: sun.font.FileFontStrike
42: iconst_1
43: StackMap locals: sun.font.FileFontStrike sun.font.FileFont sun.font.FontStrikeDesc double[] java.awt.geom.AffineTransform int float int int
StackMap stack: sun.font.FileFontStrike int
putfield sun.font.FileFontStrike.segmentedCache:Z
44: aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
lconst_0
lcmp
ifne 50
45: aload 0
new sun.font.FontStrikeDisposer
dup
aload 1
aload 2
invokespecial sun.font.FontStrikeDisposer.<init>:(Lsun/font/Font2D;Lsun/font/FontStrikeDesc;)V
putfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
46: aload 0
invokevirtual sun.font.FileFontStrike.initGlyphCache:()V
47: aload 0
invokestatic sun.font.NullFontScaler.getNullScalerContext:()J
putfield sun.font.FileFontStrike.pScalerContext:J
48: aload 1
invokestatic sun.font.FontManager.deRegisterBadFont:(Lsun/font/Font2D;)V
49: return
50: StackMap locals:
StackMap stack:
getstatic sun.font.FontManager.isWindows:Z
ifeq 62
getstatic sun.font.FileFontStrike.isXPorLater:Z
ifeq 62
51: getstatic sun.font.FontManager.useT2K:Z
ifne 62
52: invokestatic java.awt.GraphicsEnvironment.isHeadless:()Z
ifne 62
53: aload 1
getfield sun.font.FileFont.useJavaRasterizer:Z
ifne 62
54: aload 2
getfield sun.font.FontStrikeDesc.aaHint:I
iconst_4
if_icmpeq 56
55: aload 2
getfield sun.font.FontStrikeDesc.aaHint:I
iconst_5
if_icmpne 62
56: StackMap locals:
StackMap stack:
aload 3
iconst_1
daload
dconst_0
dcmpl
ifne 62
aload 3
iconst_2
daload
dconst_0
dcmpl
ifne 62
57: aload 3
iconst_0
daload
aload 3
iconst_3
daload
dcmpl
ifne 62
58: aload 3
iconst_0
daload
ldc 3.0
dcmpl
iflt 62
aload 3
iconst_0
daload
ldc 100.0
dcmpg
ifgt 62
59: aload 1
checkcast sun.font.TrueTypeFont
aload 0
getfield sun.font.FileFontStrike.intPtSize:I
invokevirtual sun.font.TrueTypeFont.useEmbeddedBitmapsForSize:(I)Z
ifne 62
60: aload 0
iconst_1
putfield sun.font.FileFontStrike.useNatives:Z
61: goto 76
62: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.font.FileFont.checkUseNatives:()Z
ifeq 76
aload 2
getfield sun.font.FontStrikeDesc.aaHint:I
ifne 76
aload 0
getfield sun.font.FileFontStrike.algoStyle:Z
ifne 76
63: aload 3
iconst_1
daload
dconst_0
dcmpl
ifne 76
aload 3
iconst_2
daload
dconst_0
dcmpl
ifne 76
64: aload 3
iconst_0
daload
ldc 6.0
dcmpl
iflt 76
aload 3
iconst_0
daload
ldc 36.0
dcmpg
ifgt 76
65: aload 3
iconst_0
daload
aload 3
iconst_3
daload
dcmpl
ifne 76
66: aload 0
iconst_1
putfield sun.font.FileFontStrike.useNatives:Z
67: aload 1
getfield sun.font.FileFont.nativeFonts:[Lsun/font/NativeFont;
arraylength
istore 9
start local 9 68: aload 0
iload 9
anewarray sun.font.NativeStrike
putfield sun.font.FileFontStrike.nativeStrikes:[Lsun/font/NativeStrike;
69: iconst_0
istore 10
start local 10 70: goto 75
71: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.nativeStrikes:[Lsun/font/NativeStrike;
iload 10
72: new sun.font.NativeStrike
dup
aload 1
getfield sun.font.FileFont.nativeFonts:[Lsun/font/NativeFont;
iload 10
aaload
aload 2
iconst_0
invokespecial sun.font.NativeStrike.<init>:(Lsun/font/NativeFont;Lsun/font/FontStrikeDesc;Z)V
73: aastore
74: iinc 10 1
StackMap locals:
StackMap stack:
75: iload 10
iload 9
if_icmplt 71
end local 10 end local 9 76: StackMap locals:
StackMap stack:
getstatic sun.font.FontManager.logging:Z
ifeq 88
getstatic sun.font.FontManager.isWindows:Z
ifeq 88
77: getstatic sun.font.FontManager.logger:Ljava/util/logging/Logger;
78: new java.lang.StringBuilder
dup
ldc "Strike for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " at size = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.FileFontStrike.intPtSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
79: ldc " use natives = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.FileFontStrike.useNatives:Z
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
80: ldc " useJavaRasteriser = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
getfield sun.font.FileFont.useJavaRasterizer:Z
invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
81: ldc " AAHint = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2
getfield sun.font.FontStrikeDesc.aaHint:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
82: ldc " Has Embedded bitmaps = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
83: aload 1
checkcast sun.font.TrueTypeFont
84: aload 0
getfield sun.font.FileFontStrike.intPtSize:I
invokevirtual sun.font.TrueTypeFont.useEmbeddedBitmapsForSize:(I)Z
85: invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
86: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
87: invokevirtual java.util.logging.Logger.info:(Ljava/lang/String;)V
88: StackMap locals:
StackMap stack:
aload 0
new sun.font.FontStrikeDisposer
dup
aload 1
aload 2
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
invokespecial sun.font.FontStrikeDisposer.<init>:(Lsun/font/Font2D;Lsun/font/FontStrikeDesc;J)V
putfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
89: aload 0
aload 4
invokevirtual java.awt.geom.AffineTransform.getScaleY:()D
ldc 48.0
dcmpg
ifgt 90
iconst_1
goto 91
StackMap locals:
StackMap stack: sun.font.FileFontStrike
90: iconst_0
StackMap locals: sun.font.FileFontStrike sun.font.FileFont sun.font.FontStrikeDesc double[] java.awt.geom.AffineTransform int float int int
StackMap stack: sun.font.FileFontStrike int
91: putfield sun.font.FileFontStrike.getImageWithAdvance:Z
92: aload 0
getfield sun.font.FileFontStrike.getImageWithAdvance:Z
ifne 103
93: aload 0
getfield sun.font.FileFontStrike.segmentedCache:Z
ifne 101
94: aload 0
iload 5
newarray 6
putfield sun.font.FileFontStrike.horizontalAdvances:[F
95: iconst_0
istore 9
start local 9 96: goto 99
97: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.horizontalAdvances:[F
iload 9
ldc 3.4028235E38
fastore
98: iinc 9 1
StackMap locals:
StackMap stack:
99: iload 9
iload 5
if_icmplt 97
end local 9 100: goto 103
101: StackMap locals:
StackMap stack:
iload 5
sipush 256
iadd
iconst_1
isub
sipush 256
idiv
istore 9
start local 9 102: aload 0
iload 9
anewarray float[]
putfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
end local 9 103: StackMap locals:
StackMap stack:
return
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 104 0 this Lsun/font/FileFontStrike;
0 104 1 fileFont Lsun/font/FileFont;
0 104 2 desc Lsun/font/FontStrikeDesc;
13 104 3 matrix [D
14 104 4 at Ljava/awt/geom/AffineTransform;
32 104 5 numGlyphs I
33 104 6 ptSize F
34 104 7 iSize I
37 104 8 isSimpleTx Z
68 76 9 numNatives I
70 76 10 i I
96 100 9 i I
102 103 9 numSegments I
Exception table:
from to target type
17 18 19 Class java.awt.geom.NoninvertibleTransformException
MethodParameters:
Name Flags
fileFont
desc
public int getNumGlyphs();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
invokevirtual sun.font.FileFont.getNumGlyphs:()I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
long getGlyphImageFromNative(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: getstatic sun.font.FontManager.isWindows:Z
ifeq 2
1: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImageFromWindows:(I)J
lreturn
2: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImageFromX11:(I)J
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/FileFontStrike;
0 3 1 glyphCode I
MethodParameters:
Name Flags
glyphCode
private native long _getGlyphImageFromWindows(java.lang.String, int, int, int, boolean);
descriptor: (Ljava/lang/String;IIIZ)J
flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
MethodParameters:
Name Flags
family
style
size
glyphCode
fracMetrics
long getGlyphImageFromWindows(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aconst_null
invokevirtual sun.font.FileFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
astore 2
start local 2 1: aload 0
getfield sun.font.FileFontStrike.desc:Lsun/font/FontStrikeDesc;
getfield sun.font.FontStrikeDesc.style:I
iconst_1
iand
aload 0
getfield sun.font.FileFontStrike.desc:Lsun/font/FontStrikeDesc;
getfield sun.font.FontStrikeDesc.style:I
iconst_2
iand
ior
2: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
invokevirtual sun.font.FileFont.getStyle:()I
3: ior
istore 3
start local 3 4: aload 0
getfield sun.font.FileFontStrike.intPtSize:I
istore 4
start local 4 5: aload 0
6: aload 2
iload 3
iload 4
iload 1
7: aload 0
getfield sun.font.FileFontStrike.desc:Lsun/font/FontStrikeDesc;
getfield sun.font.FontStrikeDesc.fmHint:I
iconst_2
if_icmpne 8
iconst_1
goto 9
StackMap locals: sun.font.FileFontStrike int java.lang.String int int
StackMap stack: sun.font.FileFontStrike java.lang.String int int int
8: iconst_0
9: StackMap locals: sun.font.FileFontStrike int java.lang.String int int
StackMap stack: sun.font.FileFontStrike java.lang.String int int int int
invokevirtual sun.font.FileFontStrike._getGlyphImageFromWindows:(Ljava/lang/String;IIIZ)J
lstore 5
start local 5 10: lload 5
lconst_0
lcmp
ifeq 16
11: aload 0
iload 1
iconst_0
invokevirtual sun.font.FileFontStrike.getGlyphAdvance:(IZ)F
fstore 7
start local 7 12: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 5
getstatic sun.font.StrikeCache.xAdvanceOffset:I
i2l
ladd
13: fload 7
14: invokevirtual sun.misc.Unsafe.putFloat:(JF)V
15: lload 5
lreturn
end local 7 16: StackMap locals: long
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
invokevirtual sun.font.FileFont.getGlyphImage:(JI)J
lreturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lsun/font/FileFontStrike;
0 17 1 glyphCode I
1 17 2 family Ljava/lang/String;
4 17 3 style I
5 17 4 size I
10 17 5 ptr J
12 16 7 advance F
MethodParameters:
Name Flags
glyphCode
long getGlyphImageFromX11(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=4, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
getfield sun.font.FileFont.glyphToCharMap:[C
iload 1
caload
istore 4
start local 4 1: iconst_0
istore 5
start local 5 2: goto 10
3: StackMap locals: sun.font.FileFontStrike int top top int int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
getfield sun.font.FileFont.nativeFonts:[Lsun/font/NativeFont;
iload 5
aaload
invokevirtual sun.font.NativeFont.getMapper:()Lsun/font/CharToGlyphMapper;
astore 6
start local 6 4: aload 6
iload 4
invokevirtual sun.font.CharToGlyphMapper.charToGlyph:(C)I
ldc 65535
iand
istore 7
start local 7 5: iload 7
aload 6
invokevirtual sun.font.CharToGlyphMapper.getMissingGlyphCode:()I
if_icmpeq 9
6: aload 0
getfield sun.font.FileFontStrike.nativeStrikes:[Lsun/font/NativeStrike;
iload 5
aaload
iload 7
invokevirtual sun.font.NativeStrike.getGlyphImagePtrNoCache:(I)J
lstore 2
start local 2 7: lload 2
lconst_0
lcmp
ifeq 9
8: lload 2
lreturn
end local 7 end local 6 end local 2 9: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
aload 0
getfield sun.font.FileFontStrike.nativeStrikes:[Lsun/font/NativeStrike;
arraylength
if_icmplt 3
end local 5 11: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
invokevirtual sun.font.FileFont.getGlyphImage:(JI)J
lreturn
end local 4 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lsun/font/FileFontStrike;
0 12 1 glyphCode I
7 9 2 glyphPtr J
1 12 4 charCode C
2 11 5 i I
4 9 6 mapper Lsun/font/CharToGlyphMapper;
5 9 7 gc I
MethodParameters:
Name Flags
glyphCode
long getGlyphImagePtr(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iload 1
ldc 65534
if_icmplt 2
1: getstatic sun.font.StrikeCache.invisibleGlyphPtr:J
lreturn
2: StackMap locals:
StackMap stack:
lconst_0
lstore 2
start local 2 3: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getCachedGlyphPtr:(I)J
dup2
lstore 2
lconst_0
lcmp
ifeq 5
4: lload 2
lreturn
5: StackMap locals: long
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.useNatives:Z
ifeq 14
6: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImageFromNative:(I)J
lstore 2
7: lload 2
lconst_0
lcmp
ifne 14
getstatic sun.font.FontManager.logging:Z
ifeq 14
8: getstatic sun.font.FontManager.logger:Ljava/util/logging/Logger;
9: new java.lang.StringBuilder
dup
ldc "Strike for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
10: ldc " at size = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.FileFontStrike.intPtSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
11: ldc " couldn't get native glyph for code = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
12: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokevirtual java.util.logging.Logger.info:(Ljava/lang/String;)V
14: StackMap locals:
StackMap stack:
lload 2
lconst_0
lcmp
ifne 18
15: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
16: iload 1
17: invokevirtual sun.font.FileFont.getGlyphImage:(JI)J
lstore 2
18: StackMap locals:
StackMap stack:
aload 0
iload 1
lload 2
invokevirtual sun.font.FileFontStrike.setCachedGlyphPtr:(IJ)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/font/FileFontStrike;
0 19 1 glyphCode I
3 19 2 glyphPtr J
MethodParameters:
Name Flags
glyphCode
void getGlyphImagePtrs(int[], long[], int);
descriptor: ([I[JI)V
flags: (0x0000)
Code:
stack=6, locals=8, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: goto 17
2: StackMap locals: int
StackMap stack:
aload 1
iload 4
iaload
istore 5
start local 5 3: iload 5
ldc 65534
if_icmplt 6
4: aload 2
iload 4
getstatic sun.font.StrikeCache.invisibleGlyphPtr:J
lastore
5: goto 16
6: StackMap locals: int
StackMap stack:
aload 2
iload 4
aload 0
iload 5
invokevirtual sun.font.FileFontStrike.getCachedGlyphPtr:(I)J
dup2_x2
lastore
lconst_0
lcmp
ifeq 8
7: goto 16
8: StackMap locals:
StackMap stack:
lconst_0
lstore 6
start local 6 9: aload 0
getfield sun.font.FileFontStrike.useNatives:Z
ifeq 11
10: aload 0
iload 5
invokevirtual sun.font.FileFontStrike.getGlyphImageFromNative:(I)J
lstore 6
11: StackMap locals: long
StackMap stack:
lload 6
lconst_0
lcmp
ifne 15
12: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
13: iload 5
14: invokevirtual sun.font.FileFont.getGlyphImage:(JI)J
lstore 6
15: StackMap locals:
StackMap stack:
aload 2
iload 4
aload 0
iload 5
lload 6
invokevirtual sun.font.FileFontStrike.setCachedGlyphPtr:(IJ)J
lastore
end local 6 end local 5 16: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
17: iload 4
iload 3
if_icmplt 2
end local 4 18: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lsun/font/FileFontStrike;
0 19 1 glyphCodes [I
0 19 2 images [J
0 19 3 len I
1 18 4 i I
3 16 5 glyphCode I
9 16 6 glyphPtr J
MethodParameters:
Name Flags
glyphCodes
images
len
int getSlot0GlyphImagePtrs(int[], long[], int);
descriptor: ([I[JI)I
flags: (0x0000)
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: iconst_0
istore 4
start local 4 1: iconst_0
istore 5
start local 5 2: goto 21
3: StackMap locals: int int
StackMap stack:
aload 1
iload 5
iaload
istore 6
start local 6 4: iload 6
ldc 16777215
if_icmplt 6
5: iload 4
ireturn
6: StackMap locals: int
StackMap stack:
iinc 4 1
7: iload 6
ldc 65534
if_icmplt 10
8: aload 2
iload 5
getstatic sun.font.StrikeCache.invisibleGlyphPtr:J
lastore
9: goto 20
10: StackMap locals:
StackMap stack:
aload 2
iload 5
aload 0
iload 6
invokevirtual sun.font.FileFontStrike.getCachedGlyphPtr:(I)J
dup2_x2
lastore
lconst_0
lcmp
ifeq 12
11: goto 20
12: StackMap locals:
StackMap stack:
lconst_0
lstore 7
start local 7 13: aload 0
getfield sun.font.FileFontStrike.useNatives:Z
ifeq 15
14: aload 0
iload 6
invokevirtual sun.font.FileFontStrike.getGlyphImageFromNative:(I)J
lstore 7
15: StackMap locals: long
StackMap stack:
lload 7
lconst_0
lcmp
ifne 19
16: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
17: iload 6
18: invokevirtual sun.font.FileFont.getGlyphImage:(JI)J
lstore 7
19: StackMap locals:
StackMap stack:
aload 2
iload 5
aload 0
iload 6
lload 7
invokevirtual sun.font.FileFontStrike.setCachedGlyphPtr:(IJ)J
lastore
end local 7 end local 6 20: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
21: iload 5
iload 3
if_icmplt 3
end local 5 22: iload 4
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/font/FileFontStrike;
0 23 1 glyphCodes [I
0 23 2 images [J
0 23 3 len I
1 23 4 convertedCnt I
2 22 5 i I
4 20 6 glyphCode I
13 20 7 glyphPtr J
MethodParameters:
Name Flags
glyphCodes
images
len
long getCachedGlyphPtr(int);
descriptor: (I)J
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.glyphCacheFormat:I
tableswitch { // 1 - 4
1: 1
2: 7
3: 2
4: 8
default: 13
}
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.intGlyphImages:[I
iload 1
iaload
i2l
ldc 4294967295
land
lreturn
2: StackMap locals:
StackMap stack:
iload 1
bipush 8
ishr
istore 2
start local 2 3: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 2
aaload
ifnull 6
4: iload 1
sipush 256
irem
istore 3
start local 3 5: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 2
aaload
iload 3
iaload
i2l
ldc 4294967295
land
lreturn
end local 3 6: StackMap locals: int
StackMap stack:
lconst_0
lreturn
end local 2 7: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.longGlyphImages:[J
iload 1
laload
lreturn
8: StackMap locals:
StackMap stack:
iload 1
bipush 8
ishr
istore 2
start local 2 9: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 2
aaload
ifnull 12
10: iload 1
sipush 256
irem
istore 3
start local 3 11: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 2
aaload
iload 3
laload
lreturn
end local 3 12: StackMap locals: int
StackMap stack:
lconst_0
lreturn
end local 2 13: StackMap locals:
StackMap stack:
lconst_0
lreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Lsun/font/FileFontStrike;
0 14 1 glyphCode I
3 7 2 segIndex I
9 13 2 segIndex I
5 6 3 subIndex I
11 12 3 subIndex I
MethodParameters:
Name Flags
glyphCode
private synchronized long setCachedGlyphPtr(int, long);
descriptor: (IJ)J
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=4, locals=6, args_size=3
start local 0 start local 1 start local 2 0: aload 0
getfield sun.font.FileFontStrike.glyphCacheFormat:I
tableswitch { // 1 - 4
1: 1
2: 15
3: 6
4: 20
default: 29
}
1: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.intGlyphImages:[I
iload 1
iaload
ifne 4
2: aload 0
getfield sun.font.FileFontStrike.intGlyphImages:[I
iload 1
lload 2
l2i
iastore
3: lload 2
lreturn
4: StackMap locals:
StackMap stack:
lload 2
l2i
invokestatic sun.font.StrikeCache.freeIntPointer:(I)V
5: aload 0
getfield sun.font.FileFontStrike.intGlyphImages:[I
iload 1
iaload
i2l
ldc 4294967295
land
lreturn
6: StackMap locals:
StackMap stack:
iload 1
bipush 8
ishr
istore 4
start local 4 7: iload 1
sipush 256
irem
istore 5
start local 5 8: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 4
aaload
ifnonnull 10
9: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 4
sipush 256
newarray 10
aastore
10: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 4
aaload
iload 5
iaload
ifne 13
11: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 4
aaload
iload 5
lload 2
l2i
iastore
12: lload 2
lreturn
13: StackMap locals:
StackMap stack:
lload 2
l2i
invokestatic sun.font.StrikeCache.freeIntPointer:(I)V
14: aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
iload 4
aaload
iload 5
iaload
i2l
ldc 4294967295
land
lreturn
end local 5 end local 4 15: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.longGlyphImages:[J
iload 1
laload
lconst_0
lcmp
ifne 18
16: aload 0
getfield sun.font.FileFontStrike.longGlyphImages:[J
iload 1
lload 2
lastore
17: lload 2
lreturn
18: StackMap locals:
StackMap stack:
lload 2
invokestatic sun.font.StrikeCache.freeLongPointer:(J)V
19: aload 0
getfield sun.font.FileFontStrike.longGlyphImages:[J
iload 1
laload
lreturn
20: StackMap locals:
StackMap stack:
iload 1
bipush 8
ishr
istore 4
start local 4 21: iload 1
sipush 256
irem
istore 5
start local 5 22: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 4
aaload
ifnonnull 24
23: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 4
sipush 256
newarray 11
aastore
24: StackMap locals: int int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 4
aaload
iload 5
laload
lconst_0
lcmp
ifne 27
25: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 4
aaload
iload 5
lload 2
lastore
26: lload 2
lreturn
27: StackMap locals:
StackMap stack:
lload 2
invokestatic sun.font.StrikeCache.freeLongPointer:(J)V
28: aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
iload 4
aaload
iload 5
laload
lreturn
end local 5 end local 4 29: StackMap locals:
StackMap stack:
aload 0
invokevirtual sun.font.FileFontStrike.initGlyphCache:()V
30: aload 0
iload 1
lload 2
invokevirtual sun.font.FileFontStrike.setCachedGlyphPtr:(IJ)J
lreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Lsun/font/FileFontStrike;
0 31 1 glyphCode I
0 31 2 glyphPtr J
7 15 4 segIndex I
21 29 4 segIndex I
8 15 5 subIndex I
22 29 5 subIndex I
MethodParameters:
Name Flags
glyphCode
glyphPtr
private synchronized void initGlyphCache();
descriptor: ()V
flags: (0x0022) ACC_PRIVATE, ACC_SYNCHRONIZED
Code:
stack=2, locals=4, args_size=1
start local 0 0: aload 0
getfield sun.font.FileFontStrike.mapper:Lsun/font/CharToGlyphMapper;
invokevirtual sun.font.CharToGlyphMapper.getNumGlyphs:()I
istore 1
start local 1 1: iconst_0
istore 2
start local 2 2: aload 0
getfield sun.font.FileFontStrike.segmentedCache:Z
ifeq 13
3: iload 1
sipush 256
iadd
iconst_1
isub
sipush 256
idiv
istore 3
start local 3 4: getstatic sun.font.FontManager.longAddresses:Z
ifeq 9
5: iconst_4
istore 2
6: aload 0
iload 3
anewarray long[]
putfield sun.font.FileFontStrike.segLongGlyphImages:[[J
7: aload 0
getfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
aload 0
getfield sun.font.FileFontStrike.segLongGlyphImages:[[J
putfield sun.font.FontStrikeDisposer.segLongGlyphImages:[[J
8: goto 21
9: StackMap locals: int int int
StackMap stack:
iconst_3
istore 2
10: aload 0
iload 3
anewarray int[]
putfield sun.font.FileFontStrike.segIntGlyphImages:[[I
11: aload 0
getfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
aload 0
getfield sun.font.FileFontStrike.segIntGlyphImages:[[I
putfield sun.font.FontStrikeDisposer.segIntGlyphImages:[[I
end local 3 12: goto 21
13: StackMap locals:
StackMap stack:
getstatic sun.font.FontManager.longAddresses:Z
ifeq 18
14: iconst_2
istore 2
15: aload 0
iload 1
newarray 11
putfield sun.font.FileFontStrike.longGlyphImages:[J
16: aload 0
getfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
aload 0
getfield sun.font.FileFontStrike.longGlyphImages:[J
putfield sun.font.FontStrikeDisposer.longGlyphImages:[J
17: goto 21
18: StackMap locals:
StackMap stack:
iconst_1
istore 2
19: aload 0
iload 1
newarray 10
putfield sun.font.FileFontStrike.intGlyphImages:[I
20: aload 0
getfield sun.font.FileFontStrike.disposer:Lsun/font/FontStrikeDisposer;
aload 0
getfield sun.font.FileFontStrike.intGlyphImages:[I
putfield sun.font.FontStrikeDisposer.intGlyphImages:[I
21: StackMap locals:
StackMap stack:
aload 0
iload 2
putfield sun.font.FileFontStrike.glyphCacheFormat:I
22: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 23 0 this Lsun/font/FileFontStrike;
1 23 1 numGlyphs I
2 23 2 tmpFormat I
4 12 3 numSegments I
float getGlyphAdvance(int);
descriptor: (I)F
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
invokevirtual sun.font.FileFontStrike.getGlyphAdvance:(IZ)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 glyphCode I
MethodParameters:
Name Flags
glyphCode
private float getGlyphAdvance(int, boolean);
descriptor: (IZ)F
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: iload 1
ldc 65534
if_icmplt 2
1: fconst_0
freturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.horizontalAdvances:[F
ifnull 6
3: aload 0
getfield sun.font.FileFontStrike.horizontalAdvances:[F
iload 1
faload
fstore 3
start local 3 4: fload 3
ldc 3.4028235E38
fcmpl
ifeq 13
5: fload 3
freturn
end local 3 6: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.segmentedCache:Z
ifeq 13
aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
ifnull 13
7: iload 1
bipush 8
ishr
istore 4
start local 4 8: aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
iload 4
aaload
astore 5
start local 5 9: aload 5
ifnull 13
10: aload 5
iload 1
sipush 256
irem
faload
fstore 3
start local 3 11: fload 3
ldc 3.4028235E38
fcmpl
ifeq 13
12: fload 3
freturn
end local 5 end local 4 end local 3 13: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
ifnonnull 14
iload 2
ifne 16
14: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
invokevirtual sun.font.FileFontStrike.getGlyphMetrics:(IZ)Ljava/awt/geom/Point2D$Float;
getfield java.awt.geom.Point2D$Float.x:F
fstore 3
start local 3 15: goto 26
end local 3 16: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.getImageWithAdvance:Z
ifeq 19
17: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImagePtr:(I)J
lstore 4
start local 4 18: goto 20
end local 4 19: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getCachedGlyphPtr:(I)J
lstore 4
start local 4 20: StackMap locals: sun.font.FileFontStrike int int top long
StackMap stack:
lload 4
lconst_0
lcmp
ifeq 25
21: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
22: lload 4
getstatic sun.font.StrikeCache.xAdvanceOffset:I
i2l
ladd
23: invokevirtual sun.misc.Unsafe.getFloat:(J)F
fstore 3
start local 3 24: goto 26
end local 3 25: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
invokevirtual sun.font.FileFont.getGlyphAdvance:(JI)F
fstore 3
end local 4 start local 3 26: StackMap locals: sun.font.FileFontStrike int int float
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.horizontalAdvances:[F
ifnull 29
27: aload 0
getfield sun.font.FileFontStrike.horizontalAdvances:[F
iload 1
fload 3
fastore
28: goto 40
StackMap locals:
StackMap stack:
29: aload 0
getfield sun.font.FileFontStrike.segmentedCache:Z
ifeq 40
aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
ifnull 40
30: iload 1
bipush 8
ishr
istore 4
start local 4 31: iload 1
sipush 256
irem
istore 5
start local 5 32: aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
iload 4
aaload
ifnonnull 39
33: aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
iload 4
sipush 256
newarray 6
aastore
34: iconst_0
istore 6
start local 6 35: goto 38
36: StackMap locals: int int int
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
iload 4
aaload
iload 6
ldc 3.4028235E38
fastore
37: iinc 6 1
StackMap locals:
StackMap stack:
38: iload 6
sipush 256
if_icmplt 36
end local 6 39: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.segHorizontalAdvances:[[F
iload 4
aaload
iload 5
fload 3
fastore
end local 5 end local 4 40: StackMap locals:
StackMap stack:
fload 3
freturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 41 0 this Lsun/font/FileFontStrike;
0 41 1 glyphCode I
0 41 2 getUserAdv Z
4 6 3 advance F
11 13 3 advance F
15 16 3 advance F
24 25 3 advance F
26 41 3 advance F
8 13 4 segIndex I
9 13 5 subArray [F
18 19 4 glyphPtr J
20 26 4 glyphPtr J
31 40 4 segIndex I
32 40 5 subIndex I
35 39 6 i I
MethodParameters:
Name Flags
glyphCode
getUserAdv
float getCodePointAdvance(int);
descriptor: (I)F
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield sun.font.FileFontStrike.mapper:Lsun/font/CharToGlyphMapper;
iload 1
invokevirtual sun.font.CharToGlyphMapper.charToGlyph:(I)I
invokevirtual sun.font.FileFontStrike.getGlyphAdvance:(I)F
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 cp I
MethodParameters:
Name Flags
cp
void getGlyphImageBounds(int, java.awt.geom.Point2D$Float, java.awt.Rectangle);
descriptor: (ILjava/awt/geom/Point2D$Float;Ljava/awt/Rectangle;)V
flags: (0x0000)
Code:
stack=6, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImagePtr:(I)J
lstore 4
start local 4 1: lload 4
lconst_0
lcmp
ifne 6
2: aload 3
aload 2
getfield java.awt.geom.Point2D$Float.x:F
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
putfield java.awt.Rectangle.x:I
3: aload 3
aload 2
getfield java.awt.geom.Point2D$Float.y:F
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
putfield java.awt.Rectangle.y:I
4: aload 3
aload 3
iconst_0
dup_x1
putfield java.awt.Rectangle.height:I
putfield java.awt.Rectangle.width:I
5: return
6: StackMap locals: long
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 4
getstatic sun.font.StrikeCache.topLeftXOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fstore 6
start local 6 7: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 4
getstatic sun.font.StrikeCache.topLeftYOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getFloat:(J)F
fstore 7
start local 7 8: aload 3
aload 2
getfield java.awt.geom.Point2D$Float.x:F
fload 6
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
putfield java.awt.Rectangle.x:I
9: aload 3
aload 2
getfield java.awt.geom.Point2D$Float.y:F
fload 7
fadd
f2d
invokestatic java.lang.Math.floor:(D)D
d2i
putfield java.awt.Rectangle.y:I
10: aload 3
11: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 4
getstatic sun.font.StrikeCache.widthOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(J)S
ldc 65535
iand
12: putfield java.awt.Rectangle.width:I
13: aload 3
14: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 4
getstatic sun.font.StrikeCache.heightOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getShort:(J)S
ldc 65535
iand
15: putfield java.awt.Rectangle.height:I
16: aload 0
getfield sun.font.FileFontStrike.desc:Lsun/font/FontStrikeDesc;
getfield sun.font.FontStrikeDesc.aaHint:I
iconst_4
if_icmpeq 18
17: aload 0
getfield sun.font.FileFontStrike.desc:Lsun/font/FontStrikeDesc;
getfield sun.font.FontStrikeDesc.aaHint:I
iconst_5
if_icmpne 23
18: StackMap locals: float float
StackMap stack:
fload 6
ldc -2.0
fcmpg
ifgt 23
19: aload 0
lload 4
aload 3
getfield java.awt.Rectangle.x:I
invokevirtual sun.font.FileFontStrike.getGlyphImageMinX:(JI)I
istore 8
start local 8 20: iload 8
aload 3
getfield java.awt.Rectangle.x:I
if_icmple 23
21: aload 3
dup
getfield java.awt.Rectangle.x:I
iconst_1
iadd
putfield java.awt.Rectangle.x:I
22: aload 3
dup
getfield java.awt.Rectangle.width:I
iconst_1
isub
putfield java.awt.Rectangle.width:I
end local 8 23: StackMap locals:
StackMap stack:
return
end local 7 end local 6 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Lsun/font/FileFontStrike;
0 24 1 glyphCode I
0 24 2 pt Ljava/awt/geom/Point2D$Float;
0 24 3 result Ljava/awt/Rectangle;
1 24 4 ptr J
7 24 6 topLeftX F
8 24 7 topLeftY F
20 23 8 minx I
MethodParameters:
Name Flags
glyphCode
pt
result
private int getGlyphImageMinX(long, int);
descriptor: (JI)I
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=3
start local 0 start local 1 start local 3 0: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 1
getstatic sun.font.StrikeCache.widthOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
istore 4
start local 4 1: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 1
getstatic sun.font.StrikeCache.heightOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
istore 5
start local 5 2: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 1
getstatic sun.font.StrikeCache.rowBytesOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getChar:(J)C
3: istore 6
start local 6 4: iload 6
iload 4
if_icmpne 6
5: iload 3
ireturn
6: StackMap locals: int int int
StackMap stack:
getstatic sun.font.StrikeCache.nativeAddressSize:I
iconst_4
if_icmpne 11
7: iconst_m1
8: getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 1
getstatic sun.font.StrikeCache.pixelDataOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getInt:(J)I
9: iand
i2l
lstore 7
start local 7 10: goto 13
end local 7 11: StackMap locals:
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 1
getstatic sun.font.StrikeCache.pixelDataOffset:I
i2l
ladd
invokevirtual sun.misc.Unsafe.getLong:(J)J
12: lstore 7
start local 7 13: StackMap locals: long
StackMap stack:
lload 7
lconst_0
lcmp
ifne 15
14: iload 3
ireturn
15: StackMap locals:
StackMap stack:
iconst_0
istore 9
start local 9 16: goto 24
17: StackMap locals: int
StackMap stack:
iconst_0
istore 10
start local 10 18: goto 22
19: StackMap locals: int
StackMap stack:
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
lload 7
iload 9
iload 6
imul
i2l
ladd
iload 10
i2l
ladd
invokevirtual sun.misc.Unsafe.getByte:(J)B
ifeq 21
20: iload 3
ireturn
21: StackMap locals:
StackMap stack:
iinc 10 1
StackMap locals:
StackMap stack:
22: iload 10
iconst_3
if_icmplt 19
end local 10 23: iinc 9 1
StackMap locals:
StackMap stack:
24: iload 9
iload 5
if_icmplt 17
end local 9 25: iload 3
iconst_1
iadd
ireturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lsun/font/FileFontStrike;
0 26 1 ptr J
0 26 3 origMinX I
1 26 4 width I
2 26 5 height I
4 26 6 rowBytes I
10 11 7 pixelData J
13 26 7 pixelData J
16 25 9 y I
18 23 10 x I
MethodParameters:
Name Flags
ptr
origMinX
sun.font.StrikeMetrics getFontMetrics();
descriptor: ()Lsun/font/StrikeMetrics;
flags: (0x0000)
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.FileFontStrike.strikeMetrics:Lsun/font/StrikeMetrics;
ifnonnull 6
1: aload 0
2: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
invokevirtual sun.font.FileFont.getFontMetrics:(J)Lsun/font/StrikeMetrics;
3: putfield sun.font.FileFontStrike.strikeMetrics:Lsun/font/StrikeMetrics;
4: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
ifnull 6
5: aload 0
getfield sun.font.FileFontStrike.strikeMetrics:Lsun/font/StrikeMetrics;
aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
invokevirtual sun.font.StrikeMetrics.convertToUserSpace:(Ljava/awt/geom/AffineTransform;)V
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.strikeMetrics:Lsun/font/StrikeMetrics;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/font/FileFontStrike;
java.awt.geom.Point2D$Float getGlyphMetrics(int);
descriptor: (I)Ljava/awt/geom/Point2D$Float;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
iconst_1
invokevirtual sun.font.FileFontStrike.getGlyphMetrics:(IZ)Ljava/awt/geom/Point2D$Float;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 glyphCode I
MethodParameters:
Name Flags
glyphCode
private java.awt.geom.Point2D$Float getGlyphMetrics(int, boolean);
descriptor: (IZ)Ljava/awt/geom/Point2D$Float;
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=9, args_size=3
start local 0 start local 1 start local 2 0: new java.awt.geom.Point2D$Float
dup
invokespecial java.awt.geom.Point2D$Float.<init>:()V
astore 3
start local 3 1: iload 1
ldc 65534
if_icmplt 3
2: aload 3
areturn
3: StackMap locals: java.awt.geom.Point2D$Float
StackMap stack:
aload 0
getfield sun.font.FileFontStrike.getImageWithAdvance:Z
ifeq 6
iload 2
ifeq 6
4: aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getGlyphImagePtr:(I)J
lstore 4
start local 4 5: goto 7
end local 4 6: StackMap locals:
StackMap stack:
aload 0
iload 1
invokevirtual sun.font.FileFontStrike.getCachedGlyphPtr:(I)J
lstore 4
start local 4 7: StackMap locals: long
StackMap stack:
lload 4
lconst_0
lcmp
ifeq 18
8: new java.awt.geom.Point2D$Float
dup
invokespecial java.awt.geom.Point2D$Float.<init>:()V
astore 3
9: aload 3
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
10: lload 4
getstatic sun.font.StrikeCache.xAdvanceOffset:I
i2l
ladd
11: invokevirtual sun.misc.Unsafe.getFloat:(J)F
putfield java.awt.geom.Point2D$Float.x:F
12: aload 3
getstatic sun.font.StrikeCache.unsafe:Lsun/misc/Unsafe;
13: lload 4
getstatic sun.font.StrikeCache.yAdvanceOffset:I
i2l
ladd
14: invokevirtual sun.misc.Unsafe.getFloat:(J)F
putfield java.awt.geom.Point2D$Float.y:F
15: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
ifnull 43
iload 2
ifeq 43
16: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
aload 3
aload 3
invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
17: goto 43
18: StackMap locals:
StackMap stack:
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
astore 6
start local 6 19: aconst_null
astore 7
start local 7 20: aconst_null
astore 8
start local 8 21: aload 0
getfield sun.font.FileFontStrike.glyphMetricsMapRef:Ljava/lang/ref/SoftReference;
ifnull 23
22: aload 0
getfield sun.font.FileFontStrike.glyphMetricsMapRef:Ljava/lang/ref/SoftReference;
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast java.util.concurrent.ConcurrentHashMap
astore 8
23: StackMap locals: java.lang.Integer java.awt.geom.Point2D$Float java.util.concurrent.ConcurrentHashMap
StackMap stack:
aload 8
ifnull 29
24: aload 8
aload 6
invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.awt.geom.Point2D$Float
astore 7
25: aload 7
ifnull 29
26: aload 3
aload 7
getfield java.awt.geom.Point2D$Float.x:F
putfield java.awt.geom.Point2D$Float.x:F
27: aload 3
aload 7
getfield java.awt.geom.Point2D$Float.y:F
putfield java.awt.geom.Point2D$Float.y:F
28: aload 3
areturn
29: StackMap locals:
StackMap stack:
aload 7
ifnonnull 43
30: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
aload 3
invokevirtual sun.font.FileFont.getGlyphMetrics:(JILjava/awt/geom/Point2D$Float;)V
31: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
ifnull 33
iload 2
ifeq 33
32: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
aload 3
aload 3
invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
33: StackMap locals:
StackMap stack:
new java.awt.geom.Point2D$Float
dup
aload 3
getfield java.awt.geom.Point2D$Float.x:F
aload 3
getfield java.awt.geom.Point2D$Float.y:F
invokespecial java.awt.geom.Point2D$Float.<init>:(FF)V
astore 7
34: aload 8
ifnonnull 42
35: new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
36: astore 8
37: aload 0
38: new java.lang.ref.SoftReference
dup
39: aload 8
40: invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
41: putfield sun.font.FileFontStrike.glyphMetricsMapRef:Ljava/lang/ref/SoftReference;
42: StackMap locals:
StackMap stack:
aload 8
aload 6
aload 7
invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 8 end local 7 end local 6 43: StackMap locals:
StackMap stack:
aload 3
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lsun/font/FileFontStrike;
0 44 1 glyphCode I
0 44 2 getUserAdv Z
1 44 3 metrics Ljava/awt/geom/Point2D$Float;
5 6 4 glyphPtr J
7 44 4 glyphPtr J
19 43 6 key Ljava/lang/Integer;
20 43 7 value Ljava/awt/geom/Point2D$Float;
21 43 8 glyphMetricsMap Ljava/util/concurrent/ConcurrentHashMap<Ljava/lang/Integer;Ljava/awt/geom/Point2D$Float;>;
MethodParameters:
Name Flags
glyphCode
getUserAdv
java.awt.geom.Point2D$Float getCharMetrics(char);
descriptor: (C)Ljava/awt/geom/Point2D$Float;
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield sun.font.FileFontStrike.mapper:Lsun/font/CharToGlyphMapper;
iload 1
invokevirtual sun.font.CharToGlyphMapper.charToGlyph:(C)I
invokevirtual sun.font.FileFontStrike.getGlyphMetrics:(I)Ljava/awt/geom/Point2D$Float;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 ch C
MethodParameters:
Name Flags
ch
java.awt.geom.Rectangle2D$Float getGlyphOutlineBounds(int);
descriptor: (I)Ljava/awt/geom/Rectangle2D$Float;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.boundsMap:Ljava/util/concurrent/ConcurrentHashMap;
ifnonnull 2
1: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield sun.font.FileFontStrike.boundsMap:Ljava/util/concurrent/ConcurrentHashMap;
2: StackMap locals:
StackMap stack:
new java.lang.Integer
dup
iload 1
invokespecial java.lang.Integer.<init>:(I)V
astore 2
start local 2 3: aload 0
getfield sun.font.FileFontStrike.boundsMap:Ljava/util/concurrent/ConcurrentHashMap;
aload 2
invokevirtual java.util.concurrent.ConcurrentHashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.awt.geom.Rectangle2D$Float
astore 3
start local 3 4: aload 3
ifnonnull 7
5: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
invokevirtual sun.font.FileFont.getGlyphOutlineBounds:(JI)Ljava/awt/geom/Rectangle2D$Float;
astore 3
6: aload 0
getfield sun.font.FileFontStrike.boundsMap:Ljava/util/concurrent/ConcurrentHashMap;
aload 2
aload 3
invokevirtual java.util.concurrent.ConcurrentHashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: StackMap locals: java.lang.Integer java.awt.geom.Rectangle2D$Float
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/font/FileFontStrike;
0 8 1 glyphCode I
3 8 2 key Ljava/lang/Integer;
4 8 3 bounds Ljava/awt/geom/Rectangle2D$Float;
MethodParameters:
Name Flags
glyphCode
public java.awt.geom.Rectangle2D getOutlineBounds(int);
descriptor: (I)Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
invokevirtual sun.font.FileFont.getGlyphOutlineBounds:(JI)Ljava/awt/geom/Rectangle2D$Float;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 glyphCode I
MethodParameters:
Name Flags
glyphCode
java.awt.geom.GeneralPath getGlyphOutline(int, float, float);
descriptor: (IFF)Ljava/awt/geom/GeneralPath;
flags: (0x0000)
Code:
stack=6, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
iload 1
fload 2
fload 3
invokevirtual sun.font.FileFont.getGlyphOutline:(JIFF)Ljava/awt/geom/GeneralPath;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FileFontStrike;
0 1 1 glyphCode I
0 1 2 x F
0 1 3 y F
MethodParameters:
Name Flags
glyphCode
x
y
java.awt.geom.GeneralPath getGlyphVectorOutline(int[], float, float);
descriptor: ([IFF)Ljava/awt/geom/GeneralPath;
flags: (0x0000)
Code:
stack=7, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
getfield sun.font.FileFontStrike.fileFont:Lsun/font/FileFont;
aload 0
getfield sun.font.FileFontStrike.pScalerContext:J
1: aload 1
aload 1
arraylength
fload 2
fload 3
2: invokevirtual sun.font.FileFont.getGlyphVectorOutline:(J[IIFF)Ljava/awt/geom/GeneralPath;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/FileFontStrike;
0 3 1 glyphs [I
0 3 2 x F
0 3 3 y F
MethodParameters:
Name Flags
glyphs
x
y
protected void adjustPoint(java.awt.geom.Point2D$Float);
descriptor: (Ljava/awt/geom/Point2D$Float;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
ifnull 2
1: aload 0
getfield sun.font.FileFontStrike.invertDevTx:Ljava/awt/geom/AffineTransform;
aload 1
aload 1
invokevirtual java.awt.geom.AffineTransform.deltaTransform:(Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;)Ljava/awt/geom/Point2D;
pop
2: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/FileFontStrike;
0 3 1 pt Ljava/awt/geom/Point2D$Float;
MethodParameters:
Name Flags
pt
}
SourceFile: "FileFontStrike.java"
InnerClasses:
public Float = java.awt.geom.Point2D$Float of java.awt.geom.Point2D
public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D