public class sun.font.NativeFont extends sun.font.PhysicalFont
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.font.NativeFont
super_class: sun.font.PhysicalFont
{
java.lang.String encoding;
descriptor: Ljava/lang/String;
flags: (0x0000)
private int numGlyphs;
descriptor: I
flags: (0x0002) ACC_PRIVATE
boolean isBitmapDelegate;
descriptor: Z
flags: (0x0000)
sun.font.PhysicalFont delegateFont;
descriptor: Lsun/font/PhysicalFont;
flags: (0x0000)
public void <init>(java.lang.String, boolean);
descriptor: (Ljava/lang/String;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aconst_null
invokespecial sun.font.PhysicalFont.<init>:(Ljava/lang/String;Ljava/lang/Object;)V
1: aload 0
iconst_m1
putfield sun.font.NativeFont.numGlyphs:I
2: aload 0
iload 2
putfield sun.font.NativeFont.isBitmapDelegate:Z
3: invokestatic java.awt.GraphicsEnvironment.isHeadless:()Z
ifeq 5
4: new java.awt.FontFormatException
dup
ldc "Native font in headless toolkit"
invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: sun.font.NativeFont java.lang.String int
StackMap stack:
aload 0
iconst_5
putfield sun.font.NativeFont.fontRank:I
6: aload 0
invokevirtual sun.font.NativeFont.initNames:()V
7: aload 0
invokevirtual sun.font.NativeFont.getNumGlyphs:()I
ifne 9
8: new java.awt.FontFormatException
dup
new java.lang.StringBuilder
dup
ldc "Couldn't locate font"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lsun/font/NativeFont;
0 10 1 platName Ljava/lang/String;
0 10 2 bitmapDelegate Z
Exceptions:
throws java.awt.FontFormatException
MethodParameters:
Name Flags
platName
bitmapDelegate
private void initNames();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=1
start local 0 0: bipush 14
newarray 10
astore 1
start local 1 1: iconst_1
istore 2
start local 2 2: iconst_1
istore 3
start local 3 3: aload 0
getfield sun.font.NativeFont.platName:Ljava/lang/String;
getstatic java.util.Locale.ENGLISH:Ljava/util/Locale;
invokevirtual java.lang.String.toLowerCase:(Ljava/util/Locale;)Ljava/lang/String;
astore 4
start local 4 4: aload 4
ldc "-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 11
5: goto 10
6: StackMap locals: sun.font.NativeFont int[] int int java.lang.String
StackMap stack:
aload 4
bipush 45
iload 3
invokevirtual java.lang.String.indexOf:(II)I
istore 3
7: iload 3
iconst_m1
if_icmpeq 10
8: aload 1
iload 2
iinc 2 1
iload 3
iastore
9: iinc 3 1
10: StackMap locals:
StackMap stack:
iload 3
iconst_m1
if_icmpeq 11
iload 2
bipush 14
if_icmplt 6
11: StackMap locals:
StackMap stack:
iload 2
bipush 14
if_icmpne 62
iload 3
iconst_m1
if_icmpeq 62
12: aload 4
aload 1
iconst_1
iaload
iconst_1
iadd
aload 1
iconst_2
iaload
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 5
start local 5 13: new java.lang.StringBuilder
dup
aload 5
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 6
start local 6 14: aload 6
iconst_0
invokevirtual java.lang.StringBuilder.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7
start local 7 15: aload 6
iconst_0
iconst_1
iload 7
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
16: iconst_1
istore 8
start local 8 17: goto 22
18: StackMap locals: sun.font.NativeFont int[] int int java.lang.String java.lang.String java.lang.StringBuilder int int
StackMap stack:
aload 6
iload 8
invokevirtual java.lang.StringBuilder.charAt:(I)C
bipush 32
if_icmpne 21
19: aload 6
iload 8
iconst_1
iadd
invokevirtual java.lang.StringBuilder.charAt:(I)C
invokestatic java.lang.Character.toUpperCase:(C)C
istore 7
20: aload 6
iload 8
iconst_1
iadd
iload 8
iconst_2
iadd
iload 7
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
21: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
22: iload 8
aload 6
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
if_icmplt 18
end local 8 23: aload 0
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield sun.font.NativeFont.familyName:Ljava/lang/String;
24: aload 4
aload 1
iconst_2
iaload
iconst_1
iadd
aload 1
iconst_3
iaload
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 8
start local 8 25: aload 4
aload 1
iconst_3
iaload
iconst_1
iadd
aload 1
iconst_4
iaload
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
astore 9
start local 9 26: aconst_null
astore 10
start local 10 27: aload 8
ldc "bold"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
ifge 29
28: aload 8
ldc "demi"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 31
29: StackMap locals: sun.font.NativeFont int[] int int java.lang.String java.lang.String java.lang.StringBuilder int java.lang.String java.lang.String java.lang.String
StackMap stack:
aload 0
dup
getfield sun.font.NativeFont.style:I
iconst_1
ior
putfield sun.font.NativeFont.style:I
30: ldc "Bold"
astore 10
31: StackMap locals:
StackMap stack:
aload 9
ldc "i"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 33
32: aload 9
ldc "italic"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 39
33: StackMap locals:
StackMap stack:
aload 0
dup
getfield sun.font.NativeFont.style:I
iconst_2
ior
putfield sun.font.NativeFont.style:I
34: aload 10
ifnonnull 37
35: ldc "Italic"
astore 10
36: goto 46
37: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 10
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Italic"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
38: goto 46
39: StackMap locals:
StackMap stack:
aload 9
ldc "o"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 41
40: aload 9
ldc "oblique"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 46
41: StackMap locals:
StackMap stack:
aload 0
dup
getfield sun.font.NativeFont.style:I
iconst_2
ior
putfield sun.font.NativeFont.style:I
42: aload 10
ifnonnull 45
43: ldc "Oblique"
astore 10
44: goto 46
45: StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
aload 10
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " Oblique"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 10
46: StackMap locals:
StackMap stack:
aload 10
ifnonnull 49
47: aload 0
aload 0
getfield sun.font.NativeFont.familyName:Ljava/lang/String;
putfield sun.font.NativeFont.fullName:Ljava/lang/String;
48: goto 50
49: StackMap locals:
StackMap stack:
aload 0
new java.lang.StringBuilder
dup
aload 0
getfield sun.font.NativeFont.familyName:Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
putfield sun.font.NativeFont.fullName:Ljava/lang/String;
50: StackMap locals:
StackMap stack:
aload 0
aload 4
aload 1
bipush 12
iaload
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
putfield sun.font.NativeFont.encoding:Ljava/lang/String;
51: aload 0
getfield sun.font.NativeFont.encoding:Ljava/lang/String;
ldc "-"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 53
52: aload 0
aload 4
aload 1
bipush 13
iaload
iconst_1
iadd
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
putfield sun.font.NativeFont.encoding:Ljava/lang/String;
53: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.encoding:Ljava/lang/String;
ldc "fontspecific"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 63
54: aload 5
ldc "dingbats"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 57
55: aload 0
ldc "dingbats"
putfield sun.font.NativeFont.encoding:Ljava/lang/String;
56: goto 63
StackMap locals:
StackMap stack:
57: aload 5
ldc "symbol"
invokevirtual java.lang.String.indexOf:(Ljava/lang/String;)I
iflt 60
58: aload 0
ldc "symbol"
putfield sun.font.NativeFont.encoding:Ljava/lang/String;
59: goto 63
60: StackMap locals:
StackMap stack:
aload 0
ldc "iso8859-1"
putfield sun.font.NativeFont.encoding:Ljava/lang/String;
end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 61: goto 63
62: StackMap locals: sun.font.NativeFont int[] int int java.lang.String
StackMap stack:
new java.awt.FontFormatException
dup
new java.lang.StringBuilder
dup
ldc "Bad native name "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.font.NativeFont.platName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.awt.FontFormatException.<init>:(Ljava/lang/String;)V
athrow
63: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 64 0 this Lsun/font/NativeFont;
1 64 1 hPos [I
2 64 2 hyphenCnt I
3 64 3 pos I
4 64 4 xlfd Ljava/lang/String;
13 61 5 tmpFamily Ljava/lang/String;
14 61 6 sBuffer Ljava/lang/StringBuilder;
15 61 7 ch C
17 23 8 i I
25 61 8 tmpWeight Ljava/lang/String;
26 61 9 tmpSlant Ljava/lang/String;
27 61 10 styleStr Ljava/lang/String;
Exceptions:
throws java.awt.FontFormatException
static boolean hasExternalBitmaps(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=5, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
aload 0
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 1
start local 1 1: aload 1
ldc "-0-"
invokevirtual java.lang.StringBuilder.indexOf:(Ljava/lang/String;)I
istore 2
start local 2 2: goto 5
3: StackMap locals: java.lang.StringBuilder int
StackMap stack:
aload 1
iload 2
iconst_1
iadd
iload 2
iconst_2
iadd
ldc "*"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
4: aload 1
ldc "-0-"
iload 2
invokevirtual java.lang.StringBuilder.indexOf:(Ljava/lang/String;I)I
istore 2
5: StackMap locals:
StackMap stack:
iload 2
ifge 3
6: aload 1
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 7: aconst_null
astore 4
start local 4 8: aload 3
ldc "UTF-8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 4
9: goto 12
StackMap locals: java.lang.String java.lang.StringBuilder int java.lang.String byte[]
StackMap stack: java.io.UnsupportedEncodingException
10: pop
11: aload 3
invokevirtual java.lang.String.getBytes:()[B
astore 4
12: StackMap locals:
StackMap stack:
aload 4
invokestatic sun.font.NativeFont.haveBitmapFonts:([B)Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 platName Ljava/lang/String;
1 13 1 sb Ljava/lang/StringBuilder;
2 13 2 pos I
7 13 3 xlfd Ljava/lang/String;
8 13 4 bytes [B
Exception table:
from to target type
8 9 10 Class java.io.UnsupportedEncodingException
MethodParameters:
Name Flags
platName
public static boolean fontExists(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
ldc "UTF-8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 1
2: goto 5
StackMap locals: java.lang.String byte[]
StackMap stack: java.io.UnsupportedEncodingException
3: pop
4: aload 0
invokevirtual java.lang.String.getBytes:()[B
astore 1
5: StackMap locals:
StackMap stack:
aload 1
invokestatic sun.font.NativeFont.fontExists:([B)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 xlfd Ljava/lang/String;
1 6 1 bytes [B
Exception table:
from to target type
1 2 3 Class java.io.UnsupportedEncodingException
MethodParameters:
Name Flags
xlfd
private static native boolean haveBitmapFonts(byte[]);
descriptor: ([B)Z
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
xlfd
private static native boolean fontExists(byte[]);
descriptor: ([B)Z
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
xlfd
public sun.font.CharToGlyphMapper getMapper();
descriptor: ()Lsun/font/CharToGlyphMapper;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.NativeFont.mapper:Lsun/font/CharToGlyphMapper;
ifnonnull 6
1: aload 0
getfield sun.font.NativeFont.isBitmapDelegate:Z
ifeq 4
2: aload 0
new sun.font.NativeGlyphMapper
dup
aload 0
invokespecial sun.font.NativeGlyphMapper.<init>:(Lsun/font/NativeFont;)V
putfield sun.font.NativeFont.mapper:Lsun/font/CharToGlyphMapper;
3: goto 6
4: StackMap locals:
StackMap stack:
aload 0
invokestatic sun.font.FontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
putfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
5: aload 0
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
invokevirtual sun.font.PhysicalFont.getMapper:()Lsun/font/CharToGlyphMapper;
putfield sun.font.NativeFont.mapper:Lsun/font/CharToGlyphMapper;
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.mapper:Lsun/font/CharToGlyphMapper;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lsun/font/NativeFont;
sun.font.FontStrike createStrike(sun.font.FontStrikeDesc);
descriptor: (Lsun/font/FontStrikeDesc;)Lsun/font/FontStrike;
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.NativeFont.isBitmapDelegate:Z
ifeq 2
1: new sun.font.NativeStrike
dup
aload 0
aload 1
invokespecial sun.font.NativeStrike.<init>:(Lsun/font/NativeFont;Lsun/font/FontStrikeDesc;)V
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
ifnonnull 4
3: aload 0
invokestatic sun.font.FontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
putfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
4: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
instanceof sun.font.NativeFont
ifeq 6
5: new sun.font.NativeStrike
dup
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
checkcast sun.font.NativeFont
aload 1
invokespecial sun.font.NativeStrike.<init>:(Lsun/font/NativeFont;Lsun/font/FontStrikeDesc;)V
areturn
6: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
aload 1
invokevirtual sun.font.PhysicalFont.createStrike:(Lsun/font/FontStrikeDesc;)Lsun/font/FontStrike;
astore 2
start local 2 7: new sun.font.DelegateStrike
dup
aload 0
aload 1
aload 2
invokespecial sun.font.DelegateStrike.<init>:(Lsun/font/NativeFont;Lsun/font/FontStrikeDesc;Lsun/font/FontStrike;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lsun/font/NativeFont;
0 8 1 desc Lsun/font/FontStrikeDesc;
7 8 2 delegate Lsun/font/FontStrike;
MethodParameters:
Name Flags
desc
public java.awt.geom.Rectangle2D getMaxCharBounds(java.awt.font.FontRenderContext);
descriptor: (Ljava/awt/font/FontRenderContext;)Ljava/awt/geom/Rectangle2D;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aconst_null
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/NativeFont;
0 1 1 frc Ljava/awt/font/FontRenderContext;
MethodParameters:
Name Flags
frc
native sun.font.StrikeMetrics getFontMetrics(long);
descriptor: (J)Lsun/font/StrikeMetrics;
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
pScalerContext
native float getGlyphAdvance(long, int);
descriptor: (JI)F
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
pContext
glyphCode
java.awt.geom.Rectangle2D$Float getGlyphOutlineBounds(long, int);
descriptor: (JI)Ljava/awt/geom/Rectangle2D$Float;
flags: (0x0000)
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 3 0: new java.awt.geom.Rectangle2D$Float
dup
fconst_0
fconst_0
fconst_0
fconst_0
invokespecial java.awt.geom.Rectangle2D$Float.<init>:(FFFF)V
areturn
end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/NativeFont;
0 1 1 pScalerContext J
0 1 3 glyphCode I
MethodParameters:
Name Flags
pScalerContext
glyphCode
public java.awt.geom.GeneralPath getGlyphOutline(long, int, float, float);
descriptor: (JIFF)Ljava/awt/geom/GeneralPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=6, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aconst_null
areturn
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/NativeFont;
0 1 1 pScalerContext J
0 1 3 glyphCode I
0 1 4 x F
0 1 5 y F
MethodParameters:
Name Flags
pScalerContext
glyphCode
x
y
native long getGlyphImage(long, int);
descriptor: (JI)J
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
pScalerContext
glyphCode
native long getGlyphImageNoDefault(long, int);
descriptor: (JI)J
flags: (0x0100) ACC_NATIVE
MethodParameters:
Name Flags
pScalerContext
glyphCode
void getGlyphMetrics(long, int, java.awt.geom.Point2D$Float);
descriptor: (JILjava/awt/geom/Point2D$Float;)V
flags: (0x0000)
Code:
stack=3, locals=5, args_size=4
start local 0 start local 1 start local 3 start local 4 0: new java.lang.RuntimeException
dup
ldc "this should be called on the strike"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/NativeFont;
0 1 1 pScalerContext J
0 1 3 glyphCode I
0 1 4 metrics Ljava/awt/geom/Point2D$Float;
MethodParameters:
Name Flags
pScalerContext
glyphCode
metrics
public java.awt.geom.GeneralPath getGlyphVectorOutline(long, int[], int, float, float);
descriptor: (J[IIFF)Ljava/awt/geom/GeneralPath;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=7, args_size=6
start local 0 start local 1 start local 3 start local 4 start local 5 start local 6 0: aconst_null
areturn
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 1 0 this Lsun/font/NativeFont;
0 1 1 pScalerContext J
0 1 3 glyphs [I
0 1 4 numGlyphs I
0 1 5 x F
0 1 6 y F
MethodParameters:
Name Flags
pScalerContext
glyphs
numGlyphs
x
y
private native int countGlyphs(byte[], int);
descriptor: ([BI)I
flags: (0x0102) ACC_PRIVATE, ACC_NATIVE
MethodParameters:
Name Flags
platformNameBytes
ptSize
public int getNumGlyphs();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield sun.font.NativeFont.numGlyphs:I
iconst_m1
if_icmpne 3
1: aload 0
bipush 8
invokevirtual sun.font.NativeFont.getPlatformNameBytes:(I)[B
astore 1
start local 1 2: aload 0
aload 0
aload 1
bipush 8
invokevirtual sun.font.NativeFont.countGlyphs:([BI)I
putfield sun.font.NativeFont.numGlyphs:I
end local 1 3: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.numGlyphs:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lsun/font/NativeFont;
2 3 1 bytes [B
sun.font.PhysicalFont getDelegateFont();
descriptor: ()Lsun/font/PhysicalFont;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
ifnonnull 2
1: aload 0
invokestatic sun.font.FontManager.getDefaultPhysicalFont:()Lsun/font/PhysicalFont;
putfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
2: StackMap locals:
StackMap stack:
aload 0
getfield sun.font.NativeFont.delegateFont:Lsun/font/PhysicalFont;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/NativeFont;
byte[] getPlatformNameBytes(int);
descriptor: (I)[B
flags: (0x0000)
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: bipush 14
newarray 10
astore 2
start local 2 1: iconst_1
istore 3
start local 3 2: iconst_1
istore 4
start local 4 3: goto 8
4: StackMap locals: int[] int int
StackMap stack:
aload 0
getfield sun.font.NativeFont.platName:Ljava/lang/String;
bipush 45
iload 4
invokevirtual java.lang.String.indexOf:(II)I
istore 4
5: iload 4
iconst_m1
if_icmpeq 8
6: aload 2
iload 3
iinc 3 1
iload 4
iastore
7: iinc 4 1
8: StackMap locals:
StackMap stack:
iload 4
iconst_m1
if_icmpeq 9
iload 3
bipush 14
if_icmplt 4
9: StackMap locals:
StackMap stack:
iload 1
invokestatic java.lang.Math.abs:(I)I
bipush 10
imul
invokestatic java.lang.Integer.toString:(I)Ljava/lang/String;
astore 5
start local 5 10: new java.lang.StringBuilder
dup
aload 0
getfield sun.font.NativeFont.platName:Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 6
start local 6 11: aload 6
aload 2
bipush 11
iaload
iconst_1
iadd
aload 2
bipush 12
iaload
ldc "*"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
12: aload 6
aload 2
bipush 9
iaload
iconst_1
iadd
aload 2
bipush 10
iaload
ldc "72"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
13: aload 6
aload 2
bipush 8
iaload
iconst_1
iadd
aload 2
bipush 9
iaload
ldc "72"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
14: aload 6
aload 2
bipush 7
iaload
iconst_1
iadd
aload 2
bipush 8
iaload
aload 5
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
15: aload 6
aload 2
bipush 6
iaload
iconst_1
iadd
aload 2
bipush 7
iaload
ldc "*"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
16: aload 2
iconst_0
iaload
ifne 18
aload 2
iconst_1
iaload
iconst_1
if_icmpne 18
17: aload 6
aload 2
iconst_0
iaload
iconst_1
iadd
aload 2
iconst_1
iaload
ldc "*"
invokevirtual java.lang.StringBuilder.replace:(IILjava/lang/String;)Ljava/lang/StringBuilder;
pop
18: StackMap locals: java.lang.String java.lang.StringBuilder
StackMap stack:
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 19: aconst_null
astore 8
start local 8 20: aload 7
ldc "UTF-8"
invokevirtual java.lang.String.getBytes:(Ljava/lang/String;)[B
astore 8
21: goto 24
StackMap locals: sun.font.NativeFont int int[] int int java.lang.String java.lang.StringBuilder java.lang.String byte[]
StackMap stack: java.io.UnsupportedEncodingException
22: pop
23: aload 7
invokevirtual java.lang.String.getBytes:()[B
astore 8
24: StackMap locals:
StackMap stack:
aload 8
areturn
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 25 0 this Lsun/font/NativeFont;
0 25 1 ptSize I
1 25 2 hPos [I
2 25 3 hyphenCnt I
3 25 4 pos I
10 25 5 sizeStr Ljava/lang/String;
11 25 6 sb Ljava/lang/StringBuilder;
19 25 7 xlfd Ljava/lang/String;
20 25 8 bytes [B
Exception table:
from to target type
20 21 22 Class java.io.UnsupportedEncodingException
MethodParameters:
Name Flags
ptSize
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc " ** Native Font: Family="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield sun.font.NativeFont.familyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " Name="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.NativeFont.fullName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc " style="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.NativeFont.style:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " nativeName="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield sun.font.NativeFont.platName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lsun/font/NativeFont;
}
SourceFile: "NativeFont.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