public class sun.font.FontConfigManager
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: sun.font.FontConfigManager
super_class: java.lang.Object
{
static boolean fontConfigFailed;
descriptor: Z
flags: (0x0008) ACC_STATIC
private static final sun.font.FontConfigManager$FontConfigInfo fcInfo;
descriptor: Lsun/font/FontConfigManager$FontConfigInfo;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static java.lang.String[] fontConfigNames;
descriptor: [Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private sun.font.FontConfigManager$FcCompFont[] fontConfigFonts;
descriptor: [Lsun/font/FontConfigManager$FcCompFont;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: iconst_0
putstatic sun.font.FontConfigManager.fontConfigFailed:Z
1: new sun.font.FontConfigManager$FontConfigInfo
dup
invokespecial sun.font.FontConfigManager$FontConfigInfo.<init>:()V
putstatic sun.font.FontConfigManager.fcInfo:Lsun/font/FontConfigManager$FontConfigInfo;
2: bipush 12
anewarray java.lang.String
dup
iconst_0
3: ldc "sans:regular:roman"
aastore
dup
iconst_1
4: ldc "sans:bold:roman"
aastore
dup
iconst_2
5: ldc "sans:regular:italic"
aastore
dup
iconst_3
6: ldc "sans:bold:italic"
aastore
dup
iconst_4
7: ldc "serif:regular:roman"
aastore
dup
iconst_5
8: ldc "serif:bold:roman"
aastore
dup
bipush 6
9: ldc "serif:regular:italic"
aastore
dup
bipush 7
10: ldc "serif:bold:italic"
aastore
dup
bipush 8
11: ldc "monospace:regular:roman"
aastore
dup
bipush 9
12: ldc "monospace:bold:roman"
aastore
dup
bipush 10
13: ldc "monospace:regular:italic"
aastore
dup
bipush 11
14: ldc "monospace:bold:italic"
aastore
15: putstatic sun.font.FontConfigManager.fontConfigNames:[Ljava/lang/String;
16: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/font/FontConfigManager;
public static java.lang.Object getFontConfigAAHint();
descriptor: ()Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "sans"
invokestatic sun.font.FontConfigManager.getFontConfigAAHint:(Ljava/lang/String;)Ljava/lang/Object;
areturn
LocalVariableTable:
Start End Slot Name Signature
public static java.lang.Object getFontConfigAAHint(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/lang/Object;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: getstatic sun.font.FontUtilities.isWindows:Z
ifeq 2
1: aconst_null
areturn
2: StackMap locals:
StackMap stack:
invokestatic sun.font.FontConfigManager.getFCLocaleStr:()Ljava/lang/String;
aload 0
invokestatic sun.font.FontConfigManager.getFontConfigAASettings:(Ljava/lang/String;Ljava/lang/String;)I
istore 1
start local 1 3: iload 1
ifge 5
4: aconst_null
areturn
5: StackMap locals: int
StackMap stack:
iconst_2
6: iload 1
7: invokestatic sun.awt.SunHints$Value.get:(II)Lsun/awt/SunHints$Value;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 fcFamily Ljava/lang/String;
3 8 1 hint I
MethodParameters:
Name Flags
fcFamily
private static java.lang.String getFCLocaleStr();
descriptor: ()Ljava/lang/String;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=3, args_size=0
0: invokestatic sun.awt.SunToolkit.getStartupLocale:()Ljava/util/Locale;
astore 0
start local 0 1: aload 0
invokevirtual java.util.Locale.getLanguage:()Ljava/lang/String;
astore 1
start local 1 2: aload 0
invokevirtual java.util.Locale.getCountry:()Ljava/lang/String;
astore 2
start local 2 3: aload 2
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 5
4: new java.lang.StringBuilder
dup
aload 1
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 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1
5: StackMap locals: java.util.Locale java.lang.String java.lang.String
StackMap stack:
aload 1
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
1 6 0 l Ljava/util/Locale;
2 6 1 localeStr Ljava/lang/String;
3 6 2 country Ljava/lang/String;
public static native int getFontConfigVersion();
descriptor: ()I
flags: (0x0109) ACC_PUBLIC, ACC_STATIC, ACC_NATIVE
public synchronized void initFontConfigFonts(boolean);
descriptor: (Z)V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=6, locals=13, args_size=2
start local 0 start local 1 0: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnull 3
1: iload 1
ifeq 2
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iconst_0
aaload
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
ifnull 3
2: StackMap locals:
StackMap stack:
return
3: StackMap locals:
StackMap stack:
getstatic sun.font.FontUtilities.isWindows:Z
ifne 4
getstatic sun.font.FontConfigManager.fontConfigFailed:Z
ifeq 5
4: StackMap locals:
StackMap stack:
return
5: StackMap locals:
StackMap stack:
lconst_0
lstore 2
start local 2 6: invokestatic sun.font.FontUtilities.isLogging:()Z
ifeq 8
7: invokestatic java.lang.System.nanoTime:()J
lstore 2
8: StackMap locals: long
StackMap stack:
getstatic sun.font.FontConfigManager.fontConfigNames:[Ljava/lang/String;
arraylength
anewarray sun.font.FontConfigManager$FcCompFont
astore 4
start local 4 9: iconst_0
istore 5
start local 5 10: goto 18
11: StackMap locals: sun.font.FontConfigManager$FcCompFont[] int
StackMap stack:
aload 4
iload 5
new sun.font.FontConfigManager$FcCompFont
dup
invokespecial sun.font.FontConfigManager$FcCompFont.<init>:()V
aastore
12: aload 4
iload 5
aaload
getstatic sun.font.FontConfigManager.fontConfigNames:[Ljava/lang/String;
iload 5
aaload
putfield sun.font.FontConfigManager$FcCompFont.fcName:Ljava/lang/String;
13: aload 4
iload 5
aaload
getfield sun.font.FontConfigManager$FcCompFont.fcName:Ljava/lang/String;
bipush 58
invokevirtual java.lang.String.indexOf:(I)I
istore 6
start local 6 14: aload 4
iload 5
aaload
aload 4
iload 5
aaload
getfield sun.font.FontConfigManager$FcCompFont.fcName:Ljava/lang/String;
iconst_0
iload 6
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
putfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
15: aload 4
iload 5
aaload
aload 4
iload 5
aaload
getfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
invokestatic sun.font.FontUtilities.mapFcName:(Ljava/lang/String;)Ljava/lang/String;
putfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
16: aload 4
iload 5
aaload
iload 5
iconst_4
irem
putfield sun.font.FontConfigManager$FcCompFont.style:I
end local 6 17: iinc 5 1
StackMap locals:
StackMap stack:
18: iload 5
aload 4
arraylength
if_icmplt 11
end local 5 19: invokestatic sun.font.FontConfigManager.getFCLocaleStr:()Ljava/lang/String;
getstatic sun.font.FontConfigManager.fcInfo:Lsun/font/FontConfigManager$FontConfigInfo;
aload 4
iload 1
invokestatic sun.font.FontConfigManager.getFontConfig:(Ljava/lang/String;Lsun/font/FontConfigManager$FontConfigInfo;[Lsun/font/FontConfigManager$FcCompFont;Z)V
20: aconst_null
astore 5
start local 5 21: iconst_0
istore 6
start local 6 22: goto 35
23: StackMap locals: sun.font.FontConfigManager int long sun.font.FontConfigManager$FcCompFont[] sun.font.FontConfigManager$FontConfigFont int
StackMap stack:
aload 4
iload 6
aaload
astore 7
start local 7 24: aload 7
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
ifnonnull 32
25: invokestatic sun.font.FontUtilities.isLogging:()Z
ifeq 30
26: invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
astore 8
start local 8 27: aload 8
new java.lang.StringBuilder
dup
ldc "Fontconfig returned no font for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
28: aload 4
iload 6
aaload
getfield sun.font.FontConfigManager$FcCompFont.fcName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
29: invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
end local 8 30: StackMap locals: sun.font.FontConfigManager$FcCompFont
StackMap stack:
iconst_1
putstatic sun.font.FontConfigManager.fontConfigFailed:Z
31: goto 34
StackMap locals:
StackMap stack:
32: aload 5
ifnonnull 34
33: aload 7
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
astore 5
end local 7 34: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
35: iload 6
aload 4
arraylength
if_icmplt 23
end local 6 36: aload 5
ifnonnull 42
37: invokestatic sun.font.FontUtilities.isLogging:()Z
ifeq 40
38: invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
astore 6
start local 6 39: aload 6
ldc "Fontconfig returned no fonts at all."
invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
end local 6 40: StackMap locals:
StackMap stack:
iconst_1
putstatic sun.font.FontConfigManager.fontConfigFailed:Z
41: return
42: StackMap locals:
StackMap stack:
getstatic sun.font.FontConfigManager.fontConfigFailed:Z
ifeq 49
43: iconst_0
istore 6
start local 6 44: goto 48
45: StackMap locals: int
StackMap stack:
aload 4
iload 6
aaload
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
ifnonnull 47
46: aload 4
iload 6
aaload
aload 5
putfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
47: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
48: iload 6
aload 4
arraylength
if_icmplt 45
end local 6 49: StackMap locals:
StackMap stack:
aload 0
aload 4
putfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
50: invokestatic sun.font.FontUtilities.isLogging:()Z
ifeq 76
51: invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
astore 6
start local 6 52: invokestatic java.lang.System.nanoTime:()J
lstore 7
start local 7 53: aload 6
new java.lang.StringBuilder
dup
ldc "Time spent accessing fontconfig="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
54: lload 7
lload 2
lsub
ldc 1000000
ldiv
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc "ms."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
55: invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
56: iconst_0
istore 9
start local 9 57: goto 75
58: StackMap locals: sun.util.logging.PlatformLogger long int
StackMap stack:
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 9
aaload
astore 10
start local 10 59: aload 6
new java.lang.StringBuilder
dup
ldc "FC font "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 10
getfield sun.font.FontConfigManager$FcCompFont.fcName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " maps to family "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
60: aload 10
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
61: ldc " in file "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 10
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
62: invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
63: aload 10
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
ifnull 74
64: iconst_0
istore 11
start local 11 65: goto 73
66: StackMap locals: sun.font.FontConfigManager$FcCompFont int
StackMap stack:
aload 10
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
iload 11
aaload
astore 12
start local 12 67: aload 6
new java.lang.StringBuilder
dup
ldc "Family="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 12
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
68: ldc " Style="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
getfield sun.font.FontConfigManager$FontConfigFont.styleStr:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
69: ldc " Fullname="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
getfield sun.font.FontConfigManager$FontConfigFont.fullName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
70: ldc " File="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 12
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
71: invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
end local 12 72: iinc 11 1
StackMap locals:
StackMap stack:
73: iload 11
aload 10
getfield sun.font.FontConfigManager$FcCompFont.allFonts:[Lsun/font/FontConfigManager$FontConfigFont;
arraylength
if_icmplt 66
end local 11 end local 10 74: StackMap locals:
StackMap stack:
iinc 9 1
StackMap locals:
StackMap stack:
75: iload 9
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
arraylength
if_icmplt 58
end local 9 end local 7 end local 6 76: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 77 0 this Lsun/font/FontConfigManager;
0 77 1 includeFallbacks Z
6 77 2 t0 J
9 77 4 fontArr [Lsun/font/FontConfigManager$FcCompFont;
10 19 5 i I
14 17 6 colonPos I
21 77 5 anyFont Lsun/font/FontConfigManager$FontConfigFont;
22 36 6 i I
24 34 7 fci Lsun/font/FontConfigManager$FcCompFont;
27 30 8 logger Lsun/util/logging/PlatformLogger;
39 40 6 logger Lsun/util/logging/PlatformLogger;
44 49 6 i I
52 76 6 logger Lsun/util/logging/PlatformLogger;
53 76 7 t1 J
57 76 9 i I
59 74 10 fci Lsun/font/FontConfigManager$FcCompFont;
65 74 11 f I
67 72 12 fcf Lsun/font/FontConfigManager$FontConfigFont;
MethodParameters:
Name Flags
includeFallbacks
public sun.font.PhysicalFont registerFromFcInfo(sun.font.FontConfigManager$FcCompFont);
descriptor: (Lsun/font/FontConfigManager$FcCompFont;)Lsun/font/PhysicalFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=2
start local 0 start local 1 0: invokestatic sun.font.SunFontManager.getInstance:()Lsun/font/SunFontManager;
astore 2
start local 2 1: aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
astore 3
start local 3 2: aload 3
invokevirtual java.lang.String.length:()I
iconst_4
isub
istore 4
start local 4 3: iload 4
ifgt 5
4: aconst_null
areturn
5: StackMap locals: sun.font.SunFontManager java.lang.String int
StackMap stack:
aload 3
iload 4
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 5
start local 5 6: aload 5
ldc ".ttc"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
istore 6
start local 6 7: aload 2
aload 3
invokevirtual sun.font.SunFontManager.getRegisteredFontFile:(Ljava/lang/String;)Lsun/font/PhysicalFont;
astore 7
start local 7 8: aload 7
ifnull 18
9: iload 6
ifeq 17
10: aload 2
aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
11: aload 1
getfield sun.font.FontConfigManager$FcCompFont.style:I
12: iconst_0
13: invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
astore 8
start local 8 14: aload 8
instanceof sun.font.PhysicalFont
ifeq 16
15: aload 8
checkcast sun.font.PhysicalFont
areturn
16: StackMap locals: sun.font.FontConfigManager sun.font.FontConfigManager$FcCompFont sun.font.SunFontManager java.lang.String int java.lang.String int sun.font.PhysicalFont sun.font.Font2D
StackMap stack:
aconst_null
areturn
end local 8 17: StackMap locals:
StackMap stack:
aload 7
areturn
18: StackMap locals:
StackMap stack:
aload 2
aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
19: aload 1
getfield sun.font.FontConfigManager$FcCompFont.style:I
20: invokevirtual sun.font.SunFontManager.findJREDeferredFont:(Ljava/lang/String;I)Lsun/font/PhysicalFont;
astore 7
21: aload 7
ifnonnull 34
22: aload 2
aload 3
invokevirtual sun.font.SunFontManager.isDeferredFont:(Ljava/lang/String;)Z
ifeq 34
23: aload 2
aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
invokevirtual sun.font.SunFontManager.initialiseDeferredFont:(Ljava/lang/String;)Lsun/font/PhysicalFont;
astore 7
24: aload 7
ifnull 34
25: iload 6
ifeq 33
26: aload 2
aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
27: aload 1
getfield sun.font.FontConfigManager$FcCompFont.style:I
28: iconst_0
29: invokevirtual sun.font.SunFontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
astore 8
start local 8 30: aload 8
instanceof sun.font.PhysicalFont
ifeq 32
31: aload 8
checkcast sun.font.PhysicalFont
areturn
32: StackMap locals: sun.font.Font2D
StackMap stack:
aconst_null
areturn
end local 8 33: StackMap locals:
StackMap stack:
aload 7
areturn
34: StackMap locals:
StackMap stack:
aload 7
ifnonnull 47
35: iconst_m1
istore 8
start local 8 36: bipush 6
istore 9
start local 9 37: aload 5
ldc ".ttf"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 38
iload 6
ifeq 41
38: StackMap locals: int int
StackMap stack:
iconst_0
istore 8
39: iconst_3
istore 9
40: goto 44
StackMap locals:
StackMap stack:
41: aload 5
ldc ".pfa"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 42
aload 5
ldc ".pfb"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 44
42: StackMap locals:
StackMap stack:
iconst_1
istore 8
43: iconst_4
istore 9
44: StackMap locals:
StackMap stack:
aload 2
aload 1
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
aconst_null
45: iload 8
iconst_1
iload 9
46: invokevirtual sun.font.SunFontManager.registerFontFile:(Ljava/lang/String;[Ljava/lang/String;IZI)Lsun/font/PhysicalFont;
astore 7
end local 9 end local 8 47: StackMap locals:
StackMap stack:
aload 7
areturn
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 48 0 this Lsun/font/FontConfigManager;
0 48 1 fcInfo Lsun/font/FontConfigManager$FcCompFont;
1 48 2 fm Lsun/font/SunFontManager;
2 48 3 fontFile Ljava/lang/String;
3 48 4 offset I
6 48 5 ext Ljava/lang/String;
7 48 6 isTTC Z
8 48 7 physFont Lsun/font/PhysicalFont;
14 17 8 f2d Lsun/font/Font2D;
30 33 8 f2d Lsun/font/Font2D;
36 47 8 fontFormat I
37 47 9 fontRank I
MethodParameters:
Name Flags
fcInfo
public sun.font.CompositeFont getFontConfigFont(java.lang.String, int);
descriptor: (Ljava/lang/String;I)Lsun/font/CompositeFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=10, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
astore 1
1: aload 0
iconst_0
invokevirtual sun.font.FontConfigManager.initFontConfigFonts:(Z)V
2: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
ifnonnull 4
3: aconst_null
areturn
4: StackMap locals:
StackMap stack:
aconst_null
astore 3
start local 3 5: iconst_0
istore 4
start local 4 6: goto 12
7: StackMap locals: sun.font.FontConfigManager$FcCompFont int
StackMap stack:
aload 1
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 4
aaload
getfield sun.font.FontConfigManager$FcCompFont.fcFamily:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 11
8: iload 2
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 4
aaload
getfield sun.font.FontConfigManager$FcCompFont.style:I
if_icmpne 11
9: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 4
aaload
astore 3
10: goto 13
11: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
12: iload 4
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
arraylength
if_icmplt 7
end local 4 13: StackMap locals:
StackMap stack:
aload 3
ifnonnull 15
14: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iconst_0
aaload
astore 3
15: StackMap locals:
StackMap stack:
invokestatic sun.font.FontUtilities.isLogging:()Z
ifeq 21
16: invokestatic sun.font.FontUtilities.getLogger:()Lsun/util/logging/PlatformLogger;
17: new java.lang.StringBuilder
dup
ldc "FC name="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " style="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 2
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
18: ldc " uses "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: ldc " in file: "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
20: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual sun.util.logging.PlatformLogger.info:(Ljava/lang/String;)V
21: StackMap locals:
StackMap stack:
aload 3
getfield sun.font.FontConfigManager$FcCompFont.compFont:Lsun/font/CompositeFont;
ifnull 23
22: aload 3
getfield sun.font.FontConfigManager$FcCompFont.compFont:Lsun/font/CompositeFont;
areturn
23: StackMap locals:
StackMap stack:
invokestatic sun.font.FontManagerFactory.getInstance:()Lsun/font/FontManager;
astore 4
start local 4 24: aload 4
aload 3
getfield sun.font.FontConfigManager$FcCompFont.jdkName:Ljava/lang/String;
iload 2
iconst_2
invokeinterface sun.font.FontManager.findFont2D:(Ljava/lang/String;II)Lsun/font/Font2D;
25: checkcast sun.font.CompositeFont
astore 5
start local 5 26: aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
ifnull 28
27: aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
ifnonnull 29
28: StackMap locals: sun.font.FontManager sun.font.CompositeFont
StackMap stack:
aload 3
aload 5
dup_x1
putfield sun.font.FontConfigManager$FcCompFont.compFont:Lsun/font/CompositeFont;
areturn
29: StackMap locals:
StackMap stack:
aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
astore 6
start local 6 30: aconst_null
astore 7
start local 7 31: aload 6
ifnull 35
32: aload 6
aload 3
getfield sun.font.FontConfigManager$FcCompFont.style:I
invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
astore 8
start local 8 33: aload 8
instanceof sun.font.PhysicalFont
ifeq 35
34: aload 8
checkcast sun.font.PhysicalFont
astore 7
end local 8 35: StackMap locals: sun.font.FontFamily sun.font.PhysicalFont
StackMap stack:
aload 7
ifnull 37
36: aload 3
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
aload 7
getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 41
37: StackMap locals:
StackMap stack:
aload 0
aload 3
invokevirtual sun.font.FontConfigManager.registerFromFcInfo:(Lsun/font/FontConfigManager$FcCompFont;)Lsun/font/PhysicalFont;
astore 7
38: aload 7
ifnonnull 40
39: aload 3
aload 5
dup_x1
putfield sun.font.FontConfigManager$FcCompFont.compFont:Lsun/font/CompositeFont;
areturn
40: StackMap locals:
StackMap stack:
aload 7
aconst_null
invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
invokestatic sun.font.FontFamily.getFamily:(Ljava/lang/String;)Lsun/font/FontFamily;
astore 6
41: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 42: goto 50
43: StackMap locals: int
StackMap stack:
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 8
aaload
astore 9
start local 9 44: aload 9
aload 3
if_acmpeq 49
45: aload 7
aconst_null
invokevirtual sun.font.PhysicalFont.getFamilyName:(Ljava/util/Locale;)Ljava/lang/String;
aload 9
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.familyName:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 49
46: aload 9
getfield sun.font.FontConfigManager$FcCompFont.firstFont:Lsun/font/FontConfigManager$FontConfigFont;
getfield sun.font.FontConfigManager$FontConfigFont.fontFile:Ljava/lang/String;
aload 7
getfield sun.font.PhysicalFont.platName:Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 49
47: aload 6
aload 9
getfield sun.font.FontConfigManager$FcCompFont.style:I
invokevirtual sun.font.FontFamily.getFontWithExactStyleMatch:(I)Lsun/font/Font2D;
ifnonnull 49
48: aload 0
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
iload 8
aaload
invokevirtual sun.font.FontConfigManager.registerFromFcInfo:(Lsun/font/FontConfigManager$FcCompFont;)Lsun/font/PhysicalFont;
pop
end local 9 49: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
50: iload 8
aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
arraylength
if_icmplt 43
end local 8 51: aload 3
new sun.font.CompositeFont
dup
aload 7
aload 5
invokespecial sun.font.CompositeFont.<init>:(Lsun/font/PhysicalFont;Lsun/font/CompositeFont;)V
dup_x1
putfield sun.font.FontConfigManager$FcCompFont.compFont:Lsun/font/CompositeFont;
areturn
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 52 0 this Lsun/font/FontConfigManager;
0 52 1 name Ljava/lang/String;
0 52 2 style I
5 52 3 fcInfo Lsun/font/FontConfigManager$FcCompFont;
6 13 4 i I
24 52 4 fm Lsun/font/FontManager;
26 52 5 jdkFont Lsun/font/CompositeFont;
30 52 6 family Lsun/font/FontFamily;
31 52 7 physFont Lsun/font/PhysicalFont;
33 35 8 f2D Lsun/font/Font2D;
42 51 8 i I
44 49 9 fc Lsun/font/FontConfigManager$FcCompFont;
MethodParameters:
Name Flags
name
style
public sun.font.FontConfigManager$FcCompFont[] getFontConfigFonts();
descriptor: ()[Lsun/font/FontConfigManager$FcCompFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lsun/font/FontConfigManager;
private static native void getFontConfig(java.lang.String, sun.font.FontConfigManager$FontConfigInfo, sun.font.FontConfigManager$FcCompFont[], boolean);
descriptor: (Ljava/lang/String;Lsun/font/FontConfigManager$FontConfigInfo;[Lsun/font/FontConfigManager$FcCompFont;Z)V
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
locale
fcInfo
fonts
includeFallbacks
void populateFontConfig(sun.font.FontConfigManager$FcCompFont[]);
descriptor: ([Lsun/font/FontConfigManager$FcCompFont;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/font/FontConfigManager;
0 2 1 fcInfo [Lsun/font/FontConfigManager$FcCompFont;
MethodParameters:
Name Flags
fcInfo
sun.font.FontConfigManager$FcCompFont[] loadFontConfig();
descriptor: ()[Lsun/font/FontConfigManager$FcCompFont;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual sun.font.FontConfigManager.initFontConfigFonts:(Z)V
1: aload 0
getfield sun.font.FontConfigManager.fontConfigFonts:[Lsun/font/FontConfigManager$FcCompFont;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/font/FontConfigManager;
sun.font.FontConfigManager$FontConfigInfo getFontConfigInfo();
descriptor: ()Lsun/font/FontConfigManager$FontConfigInfo;
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual sun.font.FontConfigManager.initFontConfigFonts:(Z)V
1: getstatic sun.font.FontConfigManager.fcInfo:Lsun/font/FontConfigManager$FontConfigInfo;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/font/FontConfigManager;
private static native int getFontConfigAASettings(java.lang.String, java.lang.String);
descriptor: (Ljava/lang/String;Ljava/lang/String;)I
flags: (0x010a) ACC_PRIVATE, ACC_STATIC, ACC_NATIVE
MethodParameters:
Name Flags
locale
fcFamily
}
SourceFile: "FontConfigManager.java"
NestMembers:
sun.font.FontConfigManager$FcCompFont sun.font.FontConfigManager$FontConfigFont sun.font.FontConfigManager$FontConfigInfo
InnerClasses:
public Value = sun.awt.SunHints$Value of sun.awt.SunHints
public FcCompFont = sun.font.FontConfigManager$FcCompFont of sun.font.FontConfigManager
public FontConfigFont = sun.font.FontConfigManager$FontConfigFont of sun.font.FontConfigManager
public FontConfigInfo = sun.font.FontConfigManager$FontConfigInfo of sun.font.FontConfigManager