public abstract class java.awt.font.GraphicAttribute
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: java.awt.font.GraphicAttribute
  super_class: java.lang.Object
{
  private int fAlignment;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  public static final int TOP_ALIGNMENT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  public static final int BOTTOM_ALIGNMENT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -2

  public static final int ROMAN_BASELINE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  public static final int CENTER_BASELINE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int HANGING_BASELINE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  protected void <init>(int);
    descriptor: (I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // java.awt.font.GraphicAttribute this
        start local 1 // int alignment
         0: .line 101
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 102
            iload 1 /* alignment */
            bipush -2
            if_icmplt 2
            iload 1 /* alignment */
            iconst_2
            if_icmple 3
         2: .line 103
      StackMap locals: java.awt.font.GraphicAttribute int
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            ldc "bad alignment"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         3: .line 105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* alignment */
            putfield java.awt.font.GraphicAttribute.fAlignment:I
         4: .line 106
            return
        end local 1 // int alignment
        end local 0 // java.awt.font.GraphicAttribute this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    5     0       this  Ljava/awt/font/GraphicAttribute;
            0    5     1  alignment  I
    MethodParameters:
           Name  Flags
      alignment  

  public abstract float getAscent();
    descriptor: ()F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract float getDescent();
    descriptor: ()F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public abstract float getAdvance();
    descriptor: ()F
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT

  public java.awt.geom.Rectangle2D getBounds();
    descriptor: ()Ljava/awt/geom/Rectangle2D;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=2, args_size=1
        start local 0 // java.awt.font.GraphicAttribute this
         0: .line 148
            aload 0 /* this */
            invokevirtual java.awt.font.GraphicAttribute.getAscent:()F
            fstore 1 /* ascent */
        start local 1 // float ascent
         1: .line 149
            new java.awt.geom.Rectangle2D$Float
            dup
            fconst_0
            fload 1 /* ascent */
            fneg
         2: .line 150
            aload 0 /* this */
            invokevirtual java.awt.font.GraphicAttribute.getAdvance:()F
            fload 1 /* ascent */
            aload 0 /* this */
            invokevirtual java.awt.font.GraphicAttribute.getDescent:()F
            fadd
         3: .line 149
            invokespecial java.awt.geom.Rectangle2D$Float.<init>:(FFFF)V
            areturn
        end local 1 // float ascent
        end local 0 // java.awt.font.GraphicAttribute this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0    this  Ljava/awt/font/GraphicAttribute;
            1    4     1  ascent  F

  public java.awt.Shape getOutline(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)Ljava/awt/Shape;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // java.awt.font.GraphicAttribute this
        start local 1 // java.awt.geom.AffineTransform tx
         0: .line 169
            aload 0 /* this */
            invokevirtual java.awt.font.GraphicAttribute.getBounds:()Ljava/awt/geom/Rectangle2D;
            astore 2 /* b */
        start local 2 // java.awt.Shape b
         1: .line 170
            aload 1 /* tx */
            ifnull 3
         2: .line 171
            aload 1 /* tx */
            aload 2 /* b */
            invokevirtual java.awt.geom.AffineTransform.createTransformedShape:(Ljava/awt/Shape;)Ljava/awt/Shape;
            astore 2 /* b */
         3: .line 173
      StackMap locals: java.awt.Shape
      StackMap stack:
            aload 2 /* b */
            areturn
        end local 2 // java.awt.Shape b
        end local 1 // java.awt.geom.AffineTransform tx
        end local 0 // java.awt.font.GraphicAttribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljava/awt/font/GraphicAttribute;
            0    4     1    tx  Ljava/awt/geom/AffineTransform;
            1    4     2     b  Ljava/awt/Shape;
    MethodParameters:
      Name  Flags
      tx    

  public abstract void draw(java.awt.Graphics2D, float, float);
    descriptor: (Ljava/awt/Graphics2D;FF)V
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
          Name  Flags
      graphics  
      x         
      y         

  public final int getAlignment();
    descriptor: ()I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // java.awt.font.GraphicAttribute this
         0: .line 194
            aload 0 /* this */
            getfield java.awt.font.GraphicAttribute.fAlignment:I
            ireturn
        end local 0 // java.awt.font.GraphicAttribute this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljava/awt/font/GraphicAttribute;

  public java.awt.font.GlyphJustificationInfo getJustificationInfo();
    descriptor: ()Ljava/awt/font/GlyphJustificationInfo;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=11, locals=2, args_size=1
        start local 0 // java.awt.font.GraphicAttribute this
         0: .line 208
            aload 0 /* this */
            invokevirtual java.awt.font.GraphicAttribute.getAdvance:()F
            fstore 1 /* advance */
        start local 1 // float advance
         1: .line 210
            new java.awt.font.GlyphJustificationInfo
            dup
         2: .line 211
            fload 1 /* advance */
         3: .line 212
            iconst_0
         4: .line 213
            iconst_2
         5: .line 214
            fload 1 /* advance */
            ldc 3.0
            fdiv
         6: .line 215
            fload 1 /* advance */
            ldc 3.0
            fdiv
         7: .line 216
            iconst_0
         8: .line 217
            iconst_1
         9: .line 218
            fconst_0
        10: .line 219
            fconst_0
        11: .line 210
            invokespecial java.awt.font.GlyphJustificationInfo.<init>:(FZIFFZIFF)V
            areturn
        end local 1 // float advance
        end local 0 // java.awt.font.GraphicAttribute this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Ljava/awt/font/GraphicAttribute;
            1   12     1  advance  F
}
SourceFile: "GraphicAttribute.java"
InnerClasses:
  public Float = java.awt.geom.Rectangle2D$Float of java.awt.geom.Rectangle2D