final class com.sun.javafx.webkit.prism.WCFontImpl extends com.sun.webkit.graphics.WCFont
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.javafx.webkit.prism.WCFontImpl
super_class: com.sun.webkit.graphics.WCFont
{
private static final com.sun.javafx.logging.PlatformLogger log;
descriptor: Lcom/sun/javafx/logging/PlatformLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.util.HashMap<java.lang.String, java.lang.String> FONT_MAP;
descriptor: Ljava/util/HashMap;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
Signature: Ljava/util/HashMap<Ljava/lang/String;Ljava/lang/String;>;
private final com.sun.javafx.font.PGFont font;
descriptor: Lcom/sun/javafx/font/PGFont;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private com.sun.javafx.font.FontStrike strike;
descriptor: Lcom/sun/javafx/font/FontStrike;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc Lcom/sun/javafx/webkit/prism/WCFontImpl;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokestatic com.sun.javafx.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lcom/sun/javafx/logging/PlatformLogger;
1: putstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
2: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
return
LocalVariableTable:
Start End Slot Name Signature
static com.sun.webkit.graphics.WCFont getFont(java.lang.String, boolean, boolean, float);
descriptor: (Ljava/lang/String;ZZF)Lcom/sun/webkit/graphics/WCFont;
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
invokevirtual com.sun.prism.GraphicsPipeline.getFontFactory:()Lcom/sun/javafx/font/FontFactory;
astore 4
start local 4 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
dup
astore 5
monitorenter
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
invokevirtual java.util.HashMap.isEmpty:()Z
ifeq 15
3: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "serif"
ldc "Serif"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "dialog"
ldc "SansSerif"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
5: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "helvetica"
ldc "SansSerif"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "sansserif"
ldc "SansSerif"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
7: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "sans-serif"
ldc "SansSerif"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
8: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "monospace"
ldc "Monospaced"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
9: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
ldc "monospaced"
ldc "Monospaced"
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
10: aload 4
invokeinterface com.sun.javafx.font.FontFactory.getFontFamilyNames:()[Ljava/lang/String;
dup
astore 9
arraylength
istore 8
iconst_0
istore 7
goto 14
StackMap locals: java.lang.String int int float com.sun.javafx.font.FontFactory java.util.HashMap top int int java.lang.String[]
StackMap stack:
11: aload 9
iload 7
aaload
astore 6
start local 6 12: getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
aload 6
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
aload 6
invokevirtual java.util.HashMap.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 6 13: iinc 7 1
StackMap locals:
StackMap stack:
14: iload 7
iload 8
if_icmplt 11
15: StackMap locals: java.lang.String int int float com.sun.javafx.font.FontFactory java.util.HashMap
StackMap stack:
aload 5
monitorexit
16: goto 19
StackMap locals:
StackMap stack: java.lang.Throwable
17: aload 5
monitorexit
18: athrow
19: StackMap locals:
StackMap stack:
getstatic com.sun.javafx.webkit.prism.WCFontImpl.FONT_MAP:Ljava/util/HashMap;
aload 0
invokevirtual java.lang.String.toLowerCase:()Ljava/lang/String;
invokevirtual java.util.HashMap.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast java.lang.String
astore 5
start local 5 20: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 28
21: new java.lang.StringBuilder
dup
ldc "WCFontImpl.get("
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
astore 6
start local 6 22: aload 6
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
fload 3
invokevirtual java.lang.StringBuilder.append:(F)Ljava/lang/StringBuilder;
pop
23: iload 1
ifeq 25
24: aload 6
ldc ", bold"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
25: StackMap locals: java.lang.String java.lang.StringBuilder
StackMap stack:
iload 2
ifeq 27
26: aload 6
ldc ", italic"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
27: StackMap locals:
StackMap stack:
getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
aload 6
ldc ") = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
end local 6 28: StackMap locals:
StackMap stack:
aload 5
ifnull 30
29: new com.sun.javafx.webkit.prism.WCFontImpl
dup
aload 4
aload 5
iload 1
iload 2
fload 3
invokeinterface com.sun.javafx.font.FontFactory.createFont:(Ljava/lang/String;ZZF)Lcom/sun/javafx/font/PGFont;
invokespecial com.sun.javafx.webkit.prism.WCFontImpl.<init>:(Lcom/sun/javafx/font/PGFont;)V
goto 31
30: StackMap locals:
StackMap stack:
aconst_null
31: StackMap locals:
StackMap stack: com.sun.javafx.webkit.prism.WCFontImpl
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 name Ljava/lang/String;
0 32 1 bold Z
0 32 2 italic Z
0 32 3 size F
1 32 4 factory Lcom/sun/javafx/font/FontFactory;
12 13 6 family Ljava/lang/String;
20 32 5 family Ljava/lang/String;
22 28 6 sb Ljava/lang/StringBuilder;
Exception table:
from to target type
2 16 17 any
17 18 17 any
MethodParameters:
Name Flags
name
bold
italic
size
void <init>(com.sun.javafx.font.PGFont);
descriptor: (Lcom/sun/javafx/font/PGFont;)V
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial com.sun.webkit.graphics.WCFont.<init>:()V
1: aload 0
aload 1
putfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 3 1 font Lcom/sun/javafx/font/PGFont;
MethodParameters:
Name Flags
font
public com.sun.webkit.graphics.WCFont deriveFont(float);
descriptor: (F)Lcom/sun/webkit/graphics/WCFont;
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=3, args_size=2
start local 0 start local 1 0: invokestatic com.sun.prism.GraphicsPipeline.getPipeline:()Lcom/sun/prism/GraphicsPipeline;
invokevirtual com.sun.prism.GraphicsPipeline.getFontFactory:()Lcom/sun/javafx/font/FontFactory;
astore 2
start local 2 1: new com.sun.javafx.webkit.prism.WCFontImpl
dup
2: aload 2
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
3: aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getFontResource:()Lcom/sun/javafx/font/FontResource;
invokeinterface com.sun.javafx.font.FontResource.isBold:()Z
4: aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getFontResource:()Lcom/sun/javafx/font/FontResource;
invokeinterface com.sun.javafx.font.FontResource.isItalic:()Z
5: fload 1
6: invokeinterface com.sun.javafx.font.FontFactory.deriveFont:(Lcom/sun/javafx/font/PGFont;ZZF)Lcom/sun/javafx/font/PGFont;
7: invokespecial com.sun.javafx.webkit.prism.WCFontImpl.<init>:(Lcom/sun/javafx/font/PGFont;)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 8 1 size F
1 8 2 factory Lcom/sun/javafx/font/FontFactory;
MethodParameters:
Name Flags
size
public int getOffsetForPosition(java.lang.String, float);
descriptor: (Ljava/lang/String;F)I
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.createLayout:(Ljava/lang/String;Ljava/lang/Object;)Lcom/sun/javafx/scene/text/TextLayout;
astore 3
start local 3 1: aload 3
invokeinterface com.sun.javafx.scene.text.TextLayout.getRuns:()[Lcom/sun/javafx/scene/text/GlyphList;
astore 4
start local 4 2: aload 4
iconst_0
aaload
checkcast com.sun.javafx.text.TextRun
astore 5
start local 5 3: aload 5
fload 2
aconst_null
invokevirtual com.sun.javafx.text.TextRun.getOffsetAtX:(F[I)I
istore 6
start local 6 4: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 8
5: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "str='%s' (length=%d), x=%.2f => %d"
iconst_4
anewarray java.lang.Object
dup
iconst_0
6: aload 1
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
fload 2
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_3
iload 6
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
7: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
8: StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String float com.sun.javafx.scene.text.TextLayout com.sun.javafx.scene.text.GlyphList[] com.sun.javafx.text.TextRun int
StackMap stack:
iload 6
ireturn
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 9 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 9 1 str Ljava/lang/String;
0 9 2 x F
1 9 3 layout Lcom/sun/javafx/scene/text/TextLayout;
2 9 4 runs [Lcom/sun/javafx/scene/text/GlyphList;
3 9 5 run Lcom/sun/javafx/text/TextRun;
4 9 6 offset I
MethodParameters:
Name Flags
str
x
public com.sun.webkit.graphics.WCGlyphBuffer getGlyphsAndAdvances(java.lang.String, int, int, boolean);
descriptor: (Ljava/lang/String;IIZ)Lcom/sun/webkit/graphics/WCGlyphBuffer;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=16, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 5
1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
2: ldc "str='%s' (length=%d), from=%d, to=%d, rtl=%b"
iconst_5
anewarray java.lang.Object
dup
iconst_0
3: aload 1
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_4
iload 4
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
4: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
5: StackMap locals:
StackMap stack:
aload 1
iload 2
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getPlatformFont:()Ljava/lang/Object;
6: invokestatic com.sun.javafx.webkit.prism.TextUtilities.createLayout:(Ljava/lang/String;Ljava/lang/Object;)Lcom/sun/javafx/scene/text/TextLayout;
astore 5
start local 5 7: iconst_0
istore 6
start local 6 8: aload 5
invokeinterface com.sun.javafx.scene.text.TextLayout.getRuns:()[Lcom/sun/javafx/scene/text/GlyphList;
astore 7
start local 7 9: aload 7
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 13
StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String int int int com.sun.javafx.scene.text.TextLayout int com.sun.javafx.scene.text.GlyphList[] top int int com.sun.javafx.scene.text.GlyphList[]
StackMap stack:
10: aload 11
iload 9
aaload
astore 8
start local 8 11: iload 6
aload 8
invokeinterface com.sun.javafx.scene.text.GlyphList.getGlyphCount:()I
iadd
istore 6
end local 8 12: iinc 9 1
StackMap locals:
StackMap stack:
13: iload 9
iload 10
if_icmplt 10
14: iload 6
newarray 10
astore 8
start local 8 15: iload 6
newarray 6
astore 9
start local 9 16: iconst_0
istore 6
17: aload 5
invokeinterface com.sun.javafx.scene.text.TextLayout.getRuns:()[Lcom/sun/javafx/scene/text/GlyphList;
dup
astore 13
arraylength
istore 12
iconst_0
istore 11
goto 28
StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String int int int com.sun.javafx.scene.text.TextLayout int com.sun.javafx.scene.text.GlyphList[] int[] float[] top int int com.sun.javafx.scene.text.GlyphList[]
StackMap stack:
18: aload 13
iload 11
aaload
astore 10
start local 10 19: aload 10
invokeinterface com.sun.javafx.scene.text.GlyphList.getGlyphCount:()I
istore 14
start local 14 20: iconst_0
istore 15
start local 15 21: goto 26
22: StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String int int int com.sun.javafx.scene.text.TextLayout int com.sun.javafx.scene.text.GlyphList[] int[] float[] com.sun.javafx.scene.text.GlyphList int int com.sun.javafx.scene.text.GlyphList[] int int
StackMap stack:
aload 8
iload 6
aload 10
iload 15
invokeinterface com.sun.javafx.scene.text.GlyphList.getGlyphCode:(I)I
iastore
23: aload 9
iload 6
aload 10
iload 15
iconst_1
iadd
invokeinterface com.sun.javafx.scene.text.GlyphList.getPosX:(I)F
aload 10
iload 15
invokeinterface com.sun.javafx.scene.text.GlyphList.getPosX:(I)F
fsub
fastore
24: iinc 6 1
25: iinc 15 1
StackMap locals:
StackMap stack:
26: iload 15
iload 14
if_icmplt 22
end local 15 end local 14 end local 10 27: iinc 11 1
StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String int int int com.sun.javafx.scene.text.TextLayout int com.sun.javafx.scene.text.GlyphList[] int[] float[] top int int com.sun.javafx.scene.text.GlyphList[]
StackMap stack:
28: iload 11
iload 12
if_icmplt 18
29: fconst_0
fstore 10
start local 10 30: iload 4
ifeq 35
31: fload 10
aload 1
iload 2
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getPlatformFont:()Ljava/lang/Object;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutWidth:(Ljava/lang/String;Ljava/lang/Object;)F
32: aload 5
invokeinterface com.sun.javafx.scene.text.TextLayout.getBounds:()Lcom/sun/javafx/geom/BaseBounds;
invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
33: fsub
fadd
fstore 10
34: goto 36
35: StackMap locals: com.sun.javafx.webkit.prism.WCFontImpl java.lang.String int int int com.sun.javafx.scene.text.TextLayout int com.sun.javafx.scene.text.GlyphList[] int[] float[] float
StackMap stack:
fload 10
aload 1
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getPlatformFont:()Ljava/lang/Object;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutWidth:(Ljava/lang/String;Ljava/lang/Object;)F
fadd
fstore 10
36: StackMap locals:
StackMap stack:
new com.sun.webkit.graphics.WCGlyphBuffer
dup
aload 8
aload 9
fload 10
invokespecial com.sun.webkit.graphics.WCGlyphBuffer.<init>:([I[FF)V
areturn
end local 10 end local 9 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 37 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 37 1 str Ljava/lang/String;
0 37 2 from I
0 37 3 to I
0 37 4 rtl Z
7 37 5 layout Lcom/sun/javafx/scene/text/TextLayout;
8 37 6 count I
9 37 7 runs [Lcom/sun/javafx/scene/text/GlyphList;
11 12 8 run Lcom/sun/javafx/scene/text/GlyphList;
15 37 8 glyphs [I
16 37 9 adv [F
19 27 10 run Lcom/sun/javafx/scene/text/GlyphList;
20 27 14 gc I
21 27 15 i I
30 37 10 x F
MethodParameters:
Name Flags
str
from
to
rtl
private com.sun.javafx.font.FontStrike getFontStrike();
descriptor: ()Lcom/sun/javafx/font/FontStrike;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.strike:Lcom/sun/javafx/font/FontStrike;
ifnonnull 2
1: aload 0
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
getstatic com.sun.javafx.geom.transform.BaseTransform.IDENTITY_TRANSFORM:Lcom/sun/javafx/geom/transform/BaseTransform;
iconst_1
invokeinterface com.sun.javafx.font.PGFont.getStrike:(Lcom/sun/javafx/geom/transform/BaseTransform;I)Lcom/sun/javafx/font/FontStrike;
putfield com.sun.javafx.webkit.prism.WCFontImpl.strike:Lcom/sun/javafx/font/FontStrike;
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.strike:Lcom/sun/javafx/font/FontStrike;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
public double getGlyphWidth(int);
descriptor: (I)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getFontResource:()Lcom/sun/javafx/font/FontResource;
iload 1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
invokeinterface com.sun.javafx.font.FontResource.getAdvance:(IF)F
f2d
dreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 1 1 glyph I
MethodParameters:
Name Flags
glyph
public float[] getGlyphBoundingBox(int);
descriptor: (I)[F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=3, args_size=2
start local 0 start local 1 0: iconst_4
newarray 6
astore 2
start local 2 1: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getFontResource:()Lcom/sun/javafx/font/FontResource;
iload 1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
aload 2
invokeinterface com.sun.javafx.font.FontResource.getGlyphBoundingBox:(IF[F)[F
astore 2
2: iconst_4
newarray 6
dup
iconst_0
aload 2
iconst_0
faload
fastore
dup
iconst_1
aload 2
iconst_3
faload
fneg
fastore
dup
iconst_2
aload 2
iconst_2
faload
fastore
dup
iconst_3
aload 2
iconst_3
faload
aload 2
iconst_1
faload
fsub
fastore
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 3 1 glyph I
1 3 2 bb [F
MethodParameters:
Name Flags
glyph
public float getXHeight();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getXHeight:()F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
public int[] getGlyphCodes(char[]);
descriptor: ([C)[I
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 1
arraylength
newarray 10
astore 2
start local 2 1: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getFontResource:()Lcom/sun/javafx/font/FontResource;
invokeinterface com.sun.javafx.font.FontResource.getGlyphMapper:()Lcom/sun/javafx/font/CharToGlyphMapper;
astore 3
start local 3 2: aload 3
aload 1
arraylength
aload 1
aload 2
invokevirtual com.sun.javafx.font.CharToGlyphMapper.charsToGlyphs:(I[C[I)V
3: aload 2
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 4 1 chars [C
1 4 2 glyphs [I
2 4 3 mapper Lcom/sun/javafx/font/CharToGlyphMapper;
MethodParameters:
Name Flags
chars
public double getStringWidth(java.lang.String);
descriptor: (Ljava/lang/String;)D
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutWidth:(Ljava/lang/String;Ljava/lang/Object;)F
f2d
dstore 2
start local 2 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 5
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "str='%s' (length=%d) => %.1f"
iconst_3
anewarray java.lang.Object
dup
iconst_0
3: aload 1
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
dload 2
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
4: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
5: StackMap locals: double
StackMap stack:
dload 2
dreturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 6 1 str Ljava/lang/String;
1 6 2 result D
MethodParameters:
Name Flags
str
public double[] getStringBounds(java.lang.String, int, int, boolean);
descriptor: (Ljava/lang/String;IIZ)[D
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=9, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
iconst_0
iload 2
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutWidth:(Ljava/lang/String;Ljava/lang/Object;)F
fstore 5
start local 5 1: aload 1
iconst_0
iload 3
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutBounds:(Ljava/lang/String;Ljava/lang/Object;)Lcom/sun/javafx/geom/BaseBounds;
astore 6
start local 6 2: iconst_4
newarray 7
dup
iconst_0
3: fload 5
f2d
dastore
dup
iconst_1
4: dconst_0
dastore
dup
iconst_2
5: aload 6
invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
fload 5
fsub
f2d
dastore
dup
iconst_3
6: aload 6
invokevirtual com.sun.javafx.geom.BaseBounds.getHeight:()F
f2d
dastore
7: astore 7
start local 7 8: iload 4
ifeq 11
9: aload 1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokestatic com.sun.javafx.webkit.prism.TextUtilities.getLayoutWidth:(Ljava/lang/String;Ljava/lang/Object;)F
fstore 8
start local 8 10: aload 7
iconst_0
fload 8
aload 6
invokevirtual com.sun.javafx.geom.BaseBounds.getWidth:()F
fsub
f2d
dastore
end local 8 11: StackMap locals: float com.sun.javafx.geom.BaseBounds double[]
StackMap stack:
getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINE:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 17
12: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
13: ldc "str='%s' (length=%d) [%d, %d], rtl=%b => [%.1f, %.1f + %.1f x %.1f]"
bipush 9
anewarray java.lang.Object
dup
iconst_0
14: aload 1
aastore
dup
iconst_1
aload 1
invokevirtual java.lang.String.length:()I
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_2
iload 2
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_3
iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_4
iload 4
invokestatic java.lang.Boolean.valueOf:(Z)Ljava/lang/Boolean;
aastore
dup
iconst_5
15: aload 7
iconst_0
daload
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
bipush 6
aload 7
iconst_1
daload
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
bipush 7
aload 7
iconst_2
daload
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
dup
bipush 8
aload 7
iconst_3
daload
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
aastore
16: invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual com.sun.javafx.logging.PlatformLogger.fine:(Ljava/lang/String;)V
17: 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 18 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
0 18 1 str Ljava/lang/String;
0 18 2 from I
0 18 3 to I
0 18 4 rtl Z
1 18 5 beforeWidth F
2 18 6 bounds Lcom/sun/javafx/geom/BaseBounds;
8 18 7 result [D
10 11 8 totalWidth F
MethodParameters:
Name Flags
str
from
to
rtl
public float getAscent();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getAscent:()F
fneg
fstore 1
start local 1 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINER:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 6
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "getAscent({0}, {1}) = {2}"
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_2
4: fload 1
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
5: invokevirtual com.sun.javafx.logging.PlatformLogger.finer:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals: float
StackMap stack:
fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
1 7 1 res F
public float getDescent();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getDescent:()F
fstore 1
start local 1 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINER:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 6
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "getDescent({0}, {1}) = {2}"
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_2
4: fload 1
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
5: invokevirtual com.sun.javafx.logging.PlatformLogger.finer:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals: float
StackMap stack:
fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
1 7 1 res F
public float getLineSpacing();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getLineHeight:()F
fstore 1
start local 1 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINER:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 6
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "getLineSpacing({0}, {1}) = {2}"
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_2
4: fload 1
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
5: invokevirtual com.sun.javafx.logging.PlatformLogger.finer:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals: float
StackMap stack:
fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
1 7 1 res F
public float getLineGap();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getLineGap:()F
fstore 1
start local 1 1: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
getstatic com.sun.javafx.logging.PlatformLogger$Level.FINER:Lcom/sun/javafx/logging/PlatformLogger$Level;
invokevirtual com.sun.javafx.logging.PlatformLogger.isLoggable:(Lcom/sun/javafx/logging/PlatformLogger$Level;)Z
ifeq 6
2: getstatic com.sun.javafx.webkit.prism.WCFontImpl.log:Lcom/sun/javafx/logging/PlatformLogger;
ldc "getLineGap({0}, {1}) = {2}"
3: iconst_3
anewarray java.lang.Object
dup
iconst_0
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getName:()Ljava/lang/String;
aastore
dup
iconst_1
aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
invokeinterface com.sun.javafx.font.PGFont.getSize:()F
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
dup
iconst_2
4: fload 1
invokestatic java.lang.Float.valueOf:(F)Ljava/lang/Float;
aastore
5: invokevirtual com.sun.javafx.logging.PlatformLogger.finer:(Ljava/lang/String;[Ljava/lang/Object;)V
6: StackMap locals: float
StackMap stack:
fload 1
freturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
1 7 1 res F
public boolean hasUniformLineMetrics();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
public java.lang.Object getPlatformFont();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.webkit.prism.WCFontImpl.font:Lcom/sun/javafx/font/PGFont;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
public float getCapHeight();
descriptor: ()F
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.javafx.webkit.prism.WCFontImpl.getFontStrike:()Lcom/sun/javafx/font/FontStrike;
invokeinterface com.sun.javafx.font.FontStrike.getMetrics:()Lcom/sun/javafx/font/Metrics;
invokeinterface com.sun.javafx.font.Metrics.getCapHeight:()F
freturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/javafx/webkit/prism/WCFontImpl;
}
SourceFile: "WCFontImpl.java"
InnerClasses:
public final Level = com.sun.javafx.logging.PlatformLogger$Level of com.sun.javafx.logging.PlatformLogger