class org.apache.fop.svg.PDFTextPainter extends org.apache.fop.svg.NativeTextPainter
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.fop.svg.PDFTextPainter
  super_class: org.apache.fop.svg.NativeTextPainter
{
  private org.apache.fop.svg.PDFGraphics2D pdf;
    descriptor: Lorg/apache/fop/svg/PDFGraphics2D;
    flags: (0x0002) ACC_PRIVATE

  private org.apache.fop.svg.PDFTextUtil textUtil;
    descriptor: Lorg/apache/fop/svg/PDFTextUtil;
    flags: (0x0002) ACC_PRIVATE

  private double prevVisibleGlyphWidth;
    descriptor: D
    flags: (0x0002) ACC_PRIVATE

  private boolean repositionNextGlyph;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private static int[] paZero;
    descriptor: [I
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 111
            iconst_4
            newarray 10
            putstatic org.apache.fop.svg.PDFTextPainter.paZero:[I
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(org.apache.fop.fonts.FontInfo);
    descriptor: (Lorg/apache/fop/fonts/FontInfo;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // org.apache.fop.fonts.FontInfo fi
         0: .line 65
            aload 0 /* this */
            aload 1 /* fi */
            invokespecial org.apache.fop.svg.NativeTextPainter.<init>:(Lorg/apache/fop/fonts/FontInfo;)V
         1: .line 66
            return
        end local 1 // org.apache.fop.fonts.FontInfo fi
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;
            0    2     1    fi  Lorg/apache/fop/fonts/FontInfo;
    MethodParameters:
      Name  Flags
      fi    

  protected boolean isSupported(java.awt.Graphics2D);
    descriptor: (Ljava/awt/Graphics2D;)Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=2, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // java.awt.Graphics2D g2d
         0: .line 71
            aload 1 /* g2d */
            instanceof org.apache.fop.svg.PDFGraphics2D
            ireturn
        end local 1 // java.awt.Graphics2D g2d
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/svg/PDFTextPainter;
            0    1     1   g2d  Ljava/awt/Graphics2D;
    MethodParameters:
      Name  Flags
      g2d   

  protected void preparePainting(java.awt.Graphics2D);
    descriptor: (Ljava/awt/Graphics2D;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // java.awt.Graphics2D g2d
         0: .line 76
            aload 0 /* this */
            aload 1 /* g2d */
            checkcast org.apache.fop.svg.PDFGraphics2D
            putfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
         1: .line 77
            return
        end local 1 // java.awt.Graphics2D g2d
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;
            0    2     1   g2d  Ljava/awt/Graphics2D;
    MethodParameters:
      Name  Flags
      g2d   

  protected void saveGraphicsState();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.svg.PDFTextPainter this
         0: .line 81
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            invokevirtual org.apache.fop.svg.PDFGraphics2D.saveGraphicsState:()V
         1: .line 82
            return
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;

  protected void restoreGraphicsState();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.svg.PDFTextPainter this
         0: .line 86
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            invokevirtual org.apache.fop.svg.PDFGraphics2D.restoreGraphicsState:()V
         1: .line 87
            return
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;

  protected void setInitialTransform(java.awt.geom.AffineTransform);
    descriptor: (Ljava/awt/geom/AffineTransform;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // java.awt.geom.AffineTransform transform
         0: .line 91
            aload 0 /* this */
            invokevirtual org.apache.fop.svg.PDFTextPainter.createTextUtil:()V
         1: .line 92
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 1 /* transform */
            invokevirtual org.apache.fop.svg.PDFTextUtil.concatMatrix:(Ljava/awt/geom/AffineTransform;)V
         2: .line 93
            return
        end local 1 // java.awt.geom.AffineTransform transform
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    3     0       this  Lorg/apache/fop/svg/PDFTextPainter;
            0    3     1  transform  Ljava/awt/geom/AffineTransform;
    MethodParameters:
           Name  Flags
      transform  

  private void createTextUtil();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.fop.svg.PDFTextPainter this
         0: .line 96
            aload 0 /* this */
            new org.apache.fop.svg.PDFTextPainter$1
            dup
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            getfield org.apache.fop.svg.PDFGraphics2D.fontInfo:Lorg/apache/fop/fonts/FontInfo;
            invokespecial org.apache.fop.svg.PDFTextPainter$1.<init>:(Lorg/apache/fop/svg/PDFTextPainter;Lorg/apache/fop/fonts/FontInfo;)V
            putfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
         1: .line 104
            return
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;

  protected void clip(java.awt.Shape);
    descriptor: (Ljava/awt/Shape;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // java.awt.Shape clip
         0: .line 108
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 1 /* clip */
            invokevirtual org.apache.fop.svg.PDFGraphics2D.writeClip:(Ljava/awt/Shape;)V
         1: .line 109
            return
        end local 1 // java.awt.Shape clip
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/svg/PDFTextPainter;
            0    2     1  clip  Ljava/awt/Shape;
    MethodParameters:
      Name  Flags
      clip  

  protected void writeGlyphs(org.apache.fop.svg.font.FOPGVTGlyphVector, java.awt.geom.GeneralPath);
    descriptor: (Lorg/apache/fop/svg/font/FOPGVTGlyphVector;Ljava/awt/geom/GeneralPath;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=15, locals=34, args_size=3
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // org.apache.fop.svg.font.FOPGVTGlyphVector gv
        start local 2 // java.awt.geom.GeneralPath debugShapes
         0: .line 114
            aload 1 /* gv */
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphPositionAdjustments:()[[I
            ifnonnull 3
         1: .line 115
            aload 0 /* this */
            aload 1 /* gv */
            aload 2 /* debugShapes */
            invokespecial org.apache.fop.svg.NativeTextPainter.writeGlyphs:(Lorg/apache/fop/svg/font/FOPGVTGlyphVector;Ljava/awt/geom/GeneralPath;)V
         2: .line 116
            goto 39
         3: .line 117
      StackMap locals:
      StackMap stack:
            aload 1 /* gv */
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getFont:()Lorg/apache/batik/gvt/font/GVTFont;
            checkcast org.apache.fop.svg.font.FOPGVTFont
            astore 3 /* gvtFont */
        start local 3 // org.apache.fop.svg.font.FOPGVTFont gvtFont
         4: .line 118
            aload 3 /* gvtFont */
            invokevirtual org.apache.fop.svg.font.FOPGVTFont.getFontKey:()Ljava/lang/String;
            astore 4 /* fk */
        start local 4 // java.lang.String fk
         5: .line 119
            aload 3 /* gvtFont */
            invokevirtual org.apache.fop.svg.font.FOPGVTFont.getFont:()Lorg/apache/fop/fonts/Font;
            astore 5 /* f */
        start local 5 // org.apache.fop.fonts.Font f
         6: .line 120
            aload 1 /* gv */
            iconst_0
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphPosition:(I)Ljava/awt/geom/Point2D;
            astore 6 /* initialPos */
        start local 6 // java.awt.geom.Point2D initialPos
         7: .line 121
            aload 5 /* f */
            invokevirtual org.apache.fop.fonts.Font.isMultiByte:()Z
            ifeq 39
         8: .line 122
            aload 5 /* f */
            invokevirtual org.apache.fop.fonts.Font.getFontSize:()I
            istore 7 /* fs */
        start local 7 // int fs
         9: .line 123
            iload 7 /* fs */
            i2f
            ldc 1000.0
            fdiv
            fstore 8 /* fsPoints */
        start local 8 // float fsPoints
        10: .line 124
            dconst_0
            dstore 9 /* xc */
        start local 9 // double xc
        11: .line 125
            dconst_0
            dstore 11 /* yc */
        start local 11 // double yc
        12: .line 126
            dconst_0
            dstore 13 /* xoLast */
        start local 13 // double xoLast
        13: .line 127
            dconst_0
            dstore 15 /* yoLast */
        start local 15 // double yoLast
        14: .line 128
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            new java.awt.geom.AffineTransform
            dup
            dconst_1
            dconst_0
            dconst_0
            ldc -1.0
            aload 6 /* initialPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 6 /* initialPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            invokespecial java.awt.geom.AffineTransform.<init>:(DDDDDD)V
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTextMatrix:(Ljava/awt/geom/AffineTransform;)V
        15: .line 129
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 4 /* fk */
            fload 8 /* fsPoints */
            f2d
            iconst_1
            iconst_0
            invokevirtual org.apache.fop.svg.PDFTextUtil.updateTf:(Ljava/lang/String;DZZ)V
        16: .line 130
            aload 1 /* gv */
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphPositionAdjustments:()[[I
            astore 17 /* dp */
        start local 17 // int[][] dp
        17: .line 131
            iconst_0
            istore 18 /* i */
        start local 18 // int i
        18: aload 1 /* gv */
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getNumGlyphs:()I
            istore 19 /* n */
        start local 19 // int n
        19: goto 38
        20: .line 132
      StackMap locals: org.apache.fop.svg.PDFTextPainter org.apache.fop.svg.font.FOPGVTGlyphVector java.awt.geom.GeneralPath org.apache.fop.svg.font.FOPGVTFont java.lang.String org.apache.fop.fonts.Font java.awt.geom.Point2D int float double double double double int[][] int int
      StackMap stack:
            aload 1 /* gv */
            iload 18 /* i */
            invokevirtual org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphCode:(I)I
            istore 20 /* gc */
        start local 20 // int gc
        21: .line 133
            iload 18 /* i */
            aload 17 /* dp */
            arraylength
            if_icmpgt 22
            aload 17 /* dp */
            iload 18 /* i */
            aaload
            ifnonnull 23
      StackMap locals: int
      StackMap stack:
        22: getstatic org.apache.fop.svg.PDFTextPainter.paZero:[I
            goto 24
      StackMap locals:
      StackMap stack:
        23: aload 17 /* dp */
            iload 18 /* i */
            aaload
      StackMap locals:
      StackMap stack: int[]
        24: astore 21 /* pa */
        start local 21 // int[] pa
        25: .line 134
            dload 9 /* xc */
            aload 21 /* pa */
            iconst_0
            iaload
            i2d
            dadd
            dstore 22 /* xo */
        start local 22 // double xo
        26: .line 135
            dload 11 /* yc */
            aload 21 /* pa */
            iconst_1
            iaload
            i2d
            dadd
            dstore 24 /* yo */
        start local 24 // double yo
        27: .line 136
            aload 5 /* f */
            iload 20 /* gc */
            invokevirtual org.apache.fop.fonts.Font.getWidth:(I)I
            i2d
            dstore 26 /* xa */
        start local 26 // double xa
        28: .line 137
            dconst_0
            dstore 28 /* ya */
        start local 28 // double ya
        29: .line 138
            dload 22 /* xo */
            dload 13 /* xoLast */
            dsub
            ldc 1000.0
            ddiv
            dstore 30 /* xd */
        start local 30 // double xd
        30: .line 139
            dload 24 /* yo */
            dload 15 /* yoLast */
            dsub
            ldc 1000.0
            ddiv
            dstore 32 /* yd */
        start local 32 // double yd
        31: .line 140
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            dload 30 /* xd */
            dload 32 /* yd */
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTd:(DD)V
        32: .line 141
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            iload 20 /* gc */
            i2c
            iconst_1
            iconst_0
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTj:(CZZ)V
        33: .line 142
            dload 9 /* xc */
            dload 26 /* xa */
            aload 21 /* pa */
            iconst_2
            iaload
            i2d
            dadd
            dadd
            dstore 9 /* xc */
        34: .line 143
            dload 11 /* yc */
            dload 28 /* ya */
            aload 21 /* pa */
            iconst_3
            iaload
            i2d
            dadd
            dadd
            dstore 11 /* yc */
        35: .line 144
            dload 22 /* xo */
            dstore 13 /* xoLast */
        36: .line 145
            dload 24 /* yo */
            dstore 15 /* yoLast */
        end local 32 // double yd
        end local 30 // double xd
        end local 28 // double ya
        end local 26 // double xa
        end local 24 // double yo
        end local 22 // double xo
        end local 21 // int[] pa
        end local 20 // int gc
        37: .line 131
            iinc 18 /* i */ 1
      StackMap locals:
      StackMap stack:
        38: iload 18 /* i */
            iload 19 /* n */
            if_icmplt 20
        end local 19 // int n
        end local 18 // int i
        end local 17 // int[][] dp
        end local 15 // double yoLast
        end local 13 // double xoLast
        end local 11 // double yc
        end local 9 // double xc
        end local 8 // float fsPoints
        end local 7 // int fs
        end local 6 // java.awt.geom.Point2D initialPos
        end local 5 // org.apache.fop.fonts.Font f
        end local 4 // java.lang.String fk
        end local 3 // org.apache.fop.svg.font.FOPGVTFont gvtFont
        39: .line 149
      StackMap locals: org.apache.fop.svg.PDFTextPainter org.apache.fop.svg.font.FOPGVTGlyphVector java.awt.geom.GeneralPath
      StackMap stack:
            return
        end local 2 // java.awt.geom.GeneralPath debugShapes
        end local 1 // org.apache.fop.svg.font.FOPGVTGlyphVector gv
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   40     0         this  Lorg/apache/fop/svg/PDFTextPainter;
            0   40     1           gv  Lorg/apache/fop/svg/font/FOPGVTGlyphVector;
            0   40     2  debugShapes  Ljava/awt/geom/GeneralPath;
            4   39     3      gvtFont  Lorg/apache/fop/svg/font/FOPGVTFont;
            5   39     4           fk  Ljava/lang/String;
            6   39     5            f  Lorg/apache/fop/fonts/Font;
            7   39     6   initialPos  Ljava/awt/geom/Point2D;
            9   39     7           fs  I
           10   39     8     fsPoints  F
           11   39     9           xc  D
           12   39    11           yc  D
           13   39    13       xoLast  D
           14   39    15       yoLast  D
           17   39    17           dp  [[I
           18   39    18            i  I
           19   39    19            n  I
           21   37    20           gc  I
           25   37    21           pa  [I
           26   37    22           xo  D
           27   37    24           yo  D
           28   37    26           xa  D
           29   37    28           ya  D
           30   37    30           xd  D
           31   37    32           yd  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      gv           
      debugShapes  

  protected void beginTextObject();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.apache.fop.svg.PDFTextPainter this
         0: .line 153
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.tpi:Lorg/apache/batik/gvt/text/TextPaintInfo;
            invokevirtual org.apache.fop.svg.PDFTextPainter.applyColorAndPaint:(Lorg/apache/batik/gvt/text/TextPaintInfo;)V
         1: .line 154
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.beginTextObject:()V
         2: .line 155
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.tpi:Lorg/apache/batik/gvt/text/TextPaintInfo;
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokePaint:Ljava/awt/Paint;
            ifnull 3
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.tpi:Lorg/apache/batik/gvt/text/TextPaintInfo;
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokeStroke:Ljava/awt/Stroke;
            ifnull 3
            iconst_1
            goto 4
      StackMap locals:
      StackMap stack:
         3: iconst_0
      StackMap locals:
      StackMap stack: int
         4: istore 1 /* stroke */
        start local 1 // boolean stroke
         5: .line 156
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.tpi:Lorg/apache/batik/gvt/text/TextPaintInfo;
            getfield org.apache.batik.gvt.text.TextPaintInfo.fillPaint:Ljava/awt/Paint;
            ifnull 6
            iconst_1
            goto 7
      StackMap locals: org.apache.fop.svg.PDFTextPainter int
      StackMap stack: org.apache.fop.svg.PDFTextUtil
         6: iconst_0
      StackMap locals: org.apache.fop.svg.PDFTextPainter int
      StackMap stack: org.apache.fop.svg.PDFTextUtil int
         7: iload 1 /* stroke */
            iconst_0
            invokevirtual org.apache.fop.svg.PDFTextUtil.setTextRenderingMode:(ZZZ)V
         8: .line 157
            return
        end local 1 // boolean stroke
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/apache/fop/svg/PDFTextPainter;
            5    9     1  stroke  Z

  protected void endTextObject();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.svg.PDFTextPainter this
         0: .line 161
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTJ:()V
         1: .line 162
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.endTextObject:()V
         2: .line 163
            return
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/fop/svg/PDFTextPainter;

  private void applyColorAndPaint(org.apache.batik.gvt.text.TextPaintInfo);
    descriptor: (Lorg/apache/batik/gvt/text/TextPaintInfo;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=7, args_size=2
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // org.apache.batik.gvt.text.TextPaintInfo tpi
         0: .line 166
            aload 1 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.fillPaint:Ljava/awt/Paint;
            astore 2 /* fillPaint */
        start local 2 // java.awt.Paint fillPaint
         1: .line 167
            aload 1 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokePaint:Ljava/awt/Paint;
            astore 3 /* strokePaint */
        start local 3 // java.awt.Paint strokePaint
         2: .line 168
            aload 1 /* tpi */
            getfield org.apache.batik.gvt.text.TextPaintInfo.strokeStroke:Ljava/awt/Stroke;
            astore 4 /* stroke */
        start local 4 // java.awt.Stroke stroke
         3: .line 169
            sipush 255
            istore 5 /* fillAlpha */
        start local 5 // int fillAlpha
         4: .line 170
            aload 2 /* fillPaint */
            instanceof java.awt.Color
            ifeq 8
         5: .line 171
            aload 2 /* fillPaint */
            checkcast java.awt.Color
            astore 6 /* col */
        start local 6 // java.awt.Color col
         6: .line 172
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 6 /* col */
            iconst_1
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyColor:(Ljava/awt/Color;Z)V
         7: .line 173
            aload 6 /* col */
            invokevirtual java.awt.Color.getAlpha:()I
            istore 5 /* fillAlpha */
        end local 6 // java.awt.Color col
         8: .line 175
      StackMap locals: org.apache.fop.svg.PDFTextPainter org.apache.batik.gvt.text.TextPaintInfo java.awt.Paint java.awt.Paint java.awt.Stroke int
      StackMap stack:
            aload 3 /* strokePaint */
            instanceof java.awt.Color
            ifeq 11
         9: .line 176
            aload 3 /* strokePaint */
            checkcast java.awt.Color
            astore 6 /* col */
        start local 6 // java.awt.Color col
        10: .line 177
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 6 /* col */
            iconst_0
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyColor:(Ljava/awt/Color;Z)V
        end local 6 // java.awt.Color col
        11: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 2 /* fillPaint */
            iconst_1
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyPaint:(Ljava/awt/Paint;Z)Z
            pop
        12: .line 180
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 4 /* stroke */
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyStroke:(Ljava/awt/Stroke;)V
        13: .line 181
            aload 3 /* strokePaint */
            ifnull 15
        14: .line 182
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            aload 3 /* strokePaint */
            iconst_0
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyPaint:(Ljava/awt/Paint;Z)Z
            pop
        15: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.pdf:Lorg/apache/fop/svg/PDFGraphics2D;
            iload 5 /* fillAlpha */
            sipush 255
            invokevirtual org.apache.fop.svg.PDFGraphics2D.applyAlpha:(II)V
        16: .line 185
            return
        end local 5 // int fillAlpha
        end local 4 // java.awt.Stroke stroke
        end local 3 // java.awt.Paint strokePaint
        end local 2 // java.awt.Paint fillPaint
        end local 1 // org.apache.batik.gvt.text.TextPaintInfo tpi
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Lorg/apache/fop/svg/PDFTextPainter;
            0   17     1          tpi  Lorg/apache/batik/gvt/text/TextPaintInfo;
            1   17     2    fillPaint  Ljava/awt/Paint;
            2   17     3  strokePaint  Ljava/awt/Paint;
            3   17     4       stroke  Ljava/awt/Stroke;
            4   17     5    fillAlpha  I
            6    8     6          col  Ljava/awt/Color;
           10   11     6          col  Ljava/awt/Color;
    MethodParameters:
      Name  Flags
      tpi   

  protected void positionGlyph(java.awt.geom.Point2D, java.awt.geom.Point2D, boolean);
    descriptor: (Ljava/awt/geom/Point2D;Ljava/awt/geom/Point2D;Z)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=12, args_size=4
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // java.awt.geom.Point2D prevPos
        start local 2 // java.awt.geom.Point2D glyphPos
        start local 3 // boolean reposition
         0: .line 191
            aload 0 /* this */
            aload 1 /* prevPos */
            ifnull 3
         1: .line 192
            aload 1 /* prevPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            aload 2 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getY:()D
            dcmpl
            ifne 3
         2: .line 193
            iload 3 /* reposition */
            ifne 3
            iconst_0
            goto 4
      StackMap locals:
      StackMap stack: org.apache.fop.svg.PDFTextPainter
         3: iconst_1
         4: .line 191
      StackMap locals: org.apache.fop.svg.PDFTextPainter java.awt.geom.Point2D java.awt.geom.Point2D int
      StackMap stack: org.apache.fop.svg.PDFTextPainter int
            putfield org.apache.fop.svg.PDFTextPainter.repositionNextGlyph:Z
         5: .line 194
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.repositionNextGlyph:Z
            ifne 12
         6: .line 195
            aload 2 /* glyphPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            aload 1 /* prevPos */
            invokevirtual java.awt.geom.Point2D.getX:()D
            dsub
            dstore 4 /* xdiff */
        start local 4 // double xdiff
         7: .line 197
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.prevVisibleGlyphWidth:D
            dstore 6 /* cw */
        start local 6 // double cw
         8: .line 198
            ldc 1000.0
            dload 4 /* xdiff */
            dmul
            dload 6 /* cw */
            dsub
            dstore 8 /* effxdiff */
        start local 8 // double effxdiff
         9: .line 199
            dload 8 /* effxdiff */
            dconst_0
            dcmpl
            ifeq 12
        10: .line 200
            dload 8 /* effxdiff */
            dneg
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            invokevirtual org.apache.fop.fonts.Font.getFontSize:()I
            i2d
            ddiv
            dstore 10 /* adjust */
        start local 10 // double adjust
        11: .line 201
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            dload 10 /* adjust */
            ldc 1000.0
            dmul
            invokevirtual org.apache.fop.svg.PDFTextUtil.adjustGlyphTJ:(D)V
        end local 10 // double adjust
        end local 8 // double effxdiff
        end local 6 // double cw
        end local 4 // double xdiff
        12: .line 204
      StackMap locals:
      StackMap stack:
            return
        end local 3 // boolean reposition
        end local 2 // java.awt.geom.Point2D glyphPos
        end local 1 // java.awt.geom.Point2D prevPos
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   13     0        this  Lorg/apache/fop/svg/PDFTextPainter;
            0   13     1     prevPos  Ljava/awt/geom/Point2D;
            0   13     2    glyphPos  Ljava/awt/geom/Point2D;
            0   13     3  reposition  Z
            7   12     4       xdiff  D
            8   12     6          cw  D
            9   12     8    effxdiff  D
           11   12    10      adjust  D
    MethodParameters:
            Name  Flags
      prevPos     
      glyphPos    
      reposition  

  protected void writeGlyph(char, java.awt.geom.AffineTransform);
    descriptor: (CLjava/awt/geom/AffineTransform;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // org.apache.fop.svg.PDFTextPainter this
        start local 1 // char glyph
        start local 2 // java.awt.geom.AffineTransform transform
         0: .line 208
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            iload 1 /* glyph */
            invokevirtual org.apache.fop.fonts.Font.getWidth:(I)I
            i2d
            putfield org.apache.fop.svg.PDFTextPainter.prevVisibleGlyphWidth:D
         1: .line 209
            iconst_0
            istore 3 /* encodingChanging */
        start local 3 // boolean encodingChanging
         2: .line 210
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            invokevirtual org.apache.fop.fonts.Font.getFontName:()Ljava/lang/String;
            invokevirtual org.apache.fop.svg.PDFTextUtil.isMultiByteFont:(Ljava/lang/String;)Z
            ifne 8
         3: .line 211
            iload 1 /* glyph */
            sipush 256
            idiv
            istore 4 /* encoding */
        start local 4 // int encoding
         4: .line 212
            iload 1 /* glyph */
            sipush 256
            irem
            i2c
            istore 1 /* glyph */
         5: .line 213
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.getCurrentEncoding:()I
            iload 4 /* encoding */
            if_icmpeq 8
         6: .line 214
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            iload 4 /* encoding */
            invokevirtual org.apache.fop.svg.PDFTextUtil.setCurrentEncoding:(I)V
         7: .line 215
            iconst_1
            istore 3 /* encodingChanging */
        end local 4 // int encoding
         8: .line 218
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.repositionNextGlyph:Z
            ifne 9
            iload 3 /* encodingChanging */
            ifeq 14
         9: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTJ:()V
        10: .line 220
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            invokevirtual org.apache.fop.svg.PDFTextUtil.getCurrentFont:()Lorg/apache/fop/fonts/Font;
            if_acmpne 11
            iload 3 /* encodingChanging */
            ifeq 13
        11: .line 221
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            invokevirtual org.apache.fop.svg.PDFTextUtil.setCurrentFont:(Lorg/apache/fop/fonts/Font;)V
        12: .line 222
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.font:Lorg/apache/fop/fonts/Font;
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTf:(Lorg/apache/fop/fonts/Font;)V
        13: .line 224
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            aload 2 /* transform */
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTextMatrix:(Ljava/awt/geom/AffineTransform;)V
        14: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.fop.svg.PDFTextPainter.textUtil:Lorg/apache/fop/svg/PDFTextUtil;
            iload 1 /* glyph */
            invokevirtual org.apache.fop.svg.PDFTextUtil.writeTJMappedChar:(C)V
        15: .line 227
            return
        end local 3 // boolean encodingChanging
        end local 2 // java.awt.geom.AffineTransform transform
        end local 1 // char glyph
        end local 0 // org.apache.fop.svg.PDFTextPainter this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   16     0              this  Lorg/apache/fop/svg/PDFTextPainter;
            0   16     1             glyph  C
            0   16     2         transform  Ljava/awt/geom/AffineTransform;
            2   16     3  encodingChanging  Z
            4    8     4          encoding  I
    MethodParameters:
           Name  Flags
      glyph      
      transform  
}
SourceFile: "PDFTextPainter.java"
NestMembers:
  org.apache.fop.svg.PDFTextPainter$1
InnerClasses:
  org.apache.fop.svg.PDFTextPainter$1