public class org.apache.fop.pdf.PDFFont extends org.apache.fop.pdf.PDFDictionary
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.fop.pdf.PDFFont
  super_class: org.apache.fop.pdf.PDFDictionary
{
  private java.lang.String fontname;
    descriptor: Ljava/lang/String;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(java.lang.String, org.apache.fop.fonts.FontType, java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Lorg/apache/fop/fonts/FontType;Ljava/lang/String;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // java.lang.String fontname
        start local 2 // org.apache.fop.fonts.FontType subtype
        start local 3 // java.lang.String basefont
        start local 4 // java.lang.Object encoding
         0: .line 54
            aload 0 /* this */
            invokespecial org.apache.fop.pdf.PDFDictionary.<init>:()V
         1: .line 56
            aload 0 /* this */
            aload 1 /* fontname */
            putfield org.apache.fop.pdf.PDFFont.fontname:Ljava/lang/String;
         2: .line 57
            aload 0 /* this */
            ldc "Type"
            new org.apache.fop.pdf.PDFName
            dup
            ldc "Font"
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         3: .line 58
            aload 0 /* this */
            ldc "Subtype"
            aload 0 /* this */
            aload 2 /* subtype */
            invokevirtual org.apache.fop.pdf.PDFFont.getPDFNameForFontType:(Lorg/apache/fop/fonts/FontType;)Lorg/apache/fop/pdf/PDFName;
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         4: .line 60
            aload 0 /* this */
            ldc "BaseFont"
            new org.apache.fop.pdf.PDFName
            dup
            aload 3 /* basefont */
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         5: .line 61
            aload 4 /* encoding */
            instanceof org.apache.fop.pdf.PDFEncoding
            ifeq 8
         6: .line 62
            aload 0 /* this */
            aload 4 /* encoding */
            checkcast org.apache.fop.pdf.PDFEncoding
            invokevirtual org.apache.fop.pdf.PDFFont.setEncoding:(Lorg/apache/fop/pdf/PDFEncoding;)V
         7: .line 63
            goto 10
      StackMap locals: org.apache.fop.pdf.PDFFont java.lang.String org.apache.fop.fonts.FontType java.lang.String java.lang.Object
      StackMap stack:
         8: aload 4 /* encoding */
            instanceof java.lang.String
            ifeq 10
         9: .line 64
            aload 0 /* this */
            aload 4 /* encoding */
            checkcast java.lang.String
            invokevirtual org.apache.fop.pdf.PDFFont.setEncoding:(Ljava/lang/String;)V
        10: .line 66
      StackMap locals:
      StackMap stack:
            return
        end local 4 // java.lang.Object encoding
        end local 3 // java.lang.String basefont
        end local 2 // org.apache.fop.fonts.FontType subtype
        end local 1 // java.lang.String fontname
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/apache/fop/pdf/PDFFont;
            0   11     1  fontname  Ljava/lang/String;
            0   11     2   subtype  Lorg/apache/fop/fonts/FontType;
            0   11     3  basefont  Ljava/lang/String;
            0   11     4  encoding  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      fontname  
      subtype   
      basefont  
      encoding  

  public void setEncoding(java.lang.String);
    descriptor: (Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // java.lang.String encoding
         0: .line 73
            aload 1 /* encoding */
            ifnull 2
            aload 1 /* encoding */
            invokestatic org.apache.fop.pdf.PDFEncoding.hasStandardEncoding:(Ljava/lang/String;)Z
            ifne 2
         1: .line 74
            aload 0 /* this */
            ldc "Encoding"
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* encoding */
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 76
      StackMap locals:
      StackMap stack:
            return
        end local 1 // java.lang.String encoding
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/fop/pdf/PDFFont;
            0    3     1  encoding  Ljava/lang/String;
    MethodParameters:
          Name  Flags
      encoding  

  public void setEncoding(org.apache.fop.pdf.PDFEncoding);
    descriptor: (Lorg/apache/fop/pdf/PDFEncoding;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // org.apache.fop.pdf.PDFEncoding encoding
         0: .line 83
            aload 1 /* encoding */
            ifnull 2
         1: .line 84
            aload 0 /* this */
            ldc "Encoding"
            aload 1 /* encoding */
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         2: .line 86
      StackMap locals:
      StackMap stack:
            return
        end local 1 // org.apache.fop.pdf.PDFEncoding encoding
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lorg/apache/fop/pdf/PDFFont;
            0    3     1  encoding  Lorg/apache/fop/pdf/PDFEncoding;
    MethodParameters:
          Name  Flags
      encoding  

  public void setToUnicode(org.apache.fop.pdf.PDFCMap);
    descriptor: (Lorg/apache/fop/pdf/PDFCMap;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // org.apache.fop.pdf.PDFCMap cmap
         0: .line 93
            aload 0 /* this */
            ldc "ToUnicode"
            aload 1 /* cmap */
            invokevirtual org.apache.fop.pdf.PDFFont.put:(Ljava/lang/String;Ljava/lang/Object;)V
         1: .line 94
            return
        end local 1 // org.apache.fop.pdf.PDFCMap cmap
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/fop/pdf/PDFFont;
            0    2     1  cmap  Lorg/apache/fop/pdf/PDFCMap;
    MethodParameters:
      Name  Flags
      cmap  

  public static org.apache.fop.pdf.PDFFont createFont(java.lang.String, org.apache.fop.fonts.FontType, java.lang.String, java.lang.Object);
    descriptor: (Ljava/lang/String;Lorg/apache/fop/fonts/FontType;Ljava/lang/String;Ljava/lang/Object;)Lorg/apache/fop/pdf/PDFFont;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=5, locals=4, args_size=4
        start local 0 // java.lang.String fontname
        start local 1 // org.apache.fop.fonts.FontType subtype
        start local 2 // java.lang.String basefont
        start local 3 // java.lang.Object encoding
         0: .line 108
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.TYPE0:Lorg/apache/fop/fonts/FontType;
            if_acmpeq 1
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.CIDTYPE0:Lorg/apache/fop/fonts/FontType;
            if_acmpne 4
         1: .line 109
      StackMap locals:
      StackMap stack:
            new org.apache.fop.pdf.PDFFontType0
            dup
            aload 0 /* fontname */
            aload 2 /* basefont */
         2: .line 110
            aload 3 /* encoding */
         3: .line 109
            invokespecial org.apache.fop.pdf.PDFFontType0.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
            areturn
         4: .line 111
      StackMap locals:
      StackMap stack:
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.TYPE1:Lorg/apache/fop/fonts/FontType;
            if_acmpeq 7
         5: .line 112
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.TYPE1C:Lorg/apache/fop/fonts/FontType;
            if_acmpeq 7
         6: .line 113
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.MMTYPE1:Lorg/apache/fop/fonts/FontType;
            if_acmpne 10
         7: .line 114
      StackMap locals:
      StackMap stack:
            new org.apache.fop.pdf.PDFFontType1
            dup
            aload 0 /* fontname */
            aload 2 /* basefont */
         8: .line 115
            aload 3 /* encoding */
         9: .line 114
            invokespecial org.apache.fop.pdf.PDFFontType1.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
            areturn
        10: .line 116
      StackMap locals:
      StackMap stack:
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.TYPE3:Lorg/apache/fop/fonts/FontType;
            if_acmpne 12
        11: .line 118
            aconst_null
            areturn
        12: .line 119
      StackMap locals:
      StackMap stack:
            aload 1 /* subtype */
            getstatic org.apache.fop.fonts.FontType.TRUETYPE:Lorg/apache/fop/fonts/FontType;
            if_acmpne 16
        13: .line 120
            new org.apache.fop.pdf.PDFFontTrueType
            dup
            aload 0 /* fontname */
            aload 2 /* basefont */
        14: .line 121
            aload 3 /* encoding */
        15: .line 120
            invokespecial org.apache.fop.pdf.PDFFontTrueType.<init>:(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)V
            areturn
        16: .line 123
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 3 // java.lang.Object encoding
        end local 2 // java.lang.String basefont
        end local 1 // org.apache.fop.fonts.FontType subtype
        end local 0 // java.lang.String fontname
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   17     0  fontname  Ljava/lang/String;
            0   17     1   subtype  Lorg/apache/fop/fonts/FontType;
            0   17     2  basefont  Ljava/lang/String;
            0   17     3  encoding  Ljava/lang/Object;
    MethodParameters:
          Name  Flags
      fontname  
      subtype   
      basefont  
      encoding  

  public java.lang.String getName();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.fop.pdf.PDFFont this
         0: .line 132
            aload 0 /* this */
            getfield org.apache.fop.pdf.PDFFont.fontname:Ljava/lang/String;
            areturn
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/pdf/PDFFont;

  public org.apache.fop.pdf.PDFName getBaseFont();
    descriptor: ()Lorg/apache/fop/pdf/PDFName;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.fop.pdf.PDFFont this
         0: .line 140
            aload 0 /* this */
            ldc "BaseFont"
            invokevirtual org.apache.fop.pdf.PDFFont.get:(Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.apache.fop.pdf.PDFName
            areturn
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/fop/pdf/PDFFont;

  protected org.apache.fop.pdf.PDFName getPDFNameForFontType(org.apache.fop.fonts.FontType);
    descriptor: (Lorg/apache/fop/fonts/FontType;)Lorg/apache/fop/pdf/PDFName;
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // org.apache.fop.fonts.FontType fontType
         0: .line 149
            aload 1 /* fontType */
            getstatic org.apache.fop.fonts.FontType.TYPE0:Lorg/apache/fop/fonts/FontType;
            if_acmpne 2
         1: .line 150
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            areturn
         2: .line 151
      StackMap locals:
      StackMap stack:
            aload 1 /* fontType */
            getstatic org.apache.fop.fonts.FontType.TYPE1:Lorg/apache/fop/fonts/FontType;
            if_acmpne 4
         3: .line 152
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            areturn
         4: .line 153
      StackMap locals:
      StackMap stack:
            aload 1 /* fontType */
            getstatic org.apache.fop.fonts.FontType.MMTYPE1:Lorg/apache/fop/fonts/FontType;
            if_acmpne 6
         5: .line 154
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            areturn
         6: .line 155
      StackMap locals:
      StackMap stack:
            aload 1 /* fontType */
            getstatic org.apache.fop.fonts.FontType.TYPE3:Lorg/apache/fop/fonts/FontType;
            if_acmpne 8
         7: .line 156
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            areturn
         8: .line 157
      StackMap locals:
      StackMap stack:
            aload 1 /* fontType */
            getstatic org.apache.fop.fonts.FontType.TRUETYPE:Lorg/apache/fop/fonts/FontType;
            if_acmpne 10
         9: .line 158
            new org.apache.fop.pdf.PDFName
            dup
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokespecial org.apache.fop.pdf.PDFName.<init>:(Ljava/lang/String;)V
            areturn
        10: .line 160
      StackMap locals:
      StackMap stack:
            new java.lang.IllegalArgumentException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported font type: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* fontType */
            invokevirtual org.apache.fop.fonts.FontType.getName:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // org.apache.fop.fonts.FontType fontType
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lorg/apache/fop/pdf/PDFFont;
            0   11     1  fontType  Lorg/apache/fop/fonts/FontType;
    MethodParameters:
          Name  Flags
      fontType  

  protected void validate();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.apache.fop.pdf.PDFFont this
         0: .line 168
            aload 0 /* this */
            invokevirtual org.apache.fop.pdf.PDFFont.getDocumentSafely:()Lorg/apache/fop/pdf/PDFDocument;
            invokevirtual org.apache.fop.pdf.PDFDocument.getProfile:()Lorg/apache/fop/pdf/PDFProfile;
            invokevirtual org.apache.fop.pdf.PDFProfile.isFontEmbeddingRequired:()Z
            ifeq 6
         1: .line 169
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            ldc Lorg/apache/fop/pdf/PDFFont;
            if_acmpne 6
         2: .line 170
            new org.apache.fop.pdf.PDFConformanceException
            dup
            new java.lang.StringBuilder
            dup
            ldc "For "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            invokevirtual org.apache.fop.pdf.PDFFont.getDocumentSafely:()Lorg/apache/fop/pdf/PDFDocument;
            invokevirtual org.apache.fop.pdf.PDFDocument.getProfile:()Lorg/apache/fop/pdf/PDFProfile;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
         3: .line 171
            ldc ", all fonts, even the base 14"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
         4: .line 172
            ldc " fonts, have to be embedded! Offending font: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 0 /* this */
            invokevirtual org.apache.fop.pdf.PDFFont.getBaseFont:()Lorg/apache/fop/pdf/PDFName;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         5: .line 170
            invokespecial org.apache.fop.pdf.PDFConformanceException.<init>:(Ljava/lang/String;)V
            athrow
         6: .line 175
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lorg/apache/fop/pdf/PDFFont;

  public int output(java.io.OutputStream);
    descriptor: (Ljava/io/OutputStream;)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // org.apache.fop.pdf.PDFFont this
        start local 1 // java.io.OutputStream stream
         0: .line 179
            aload 0 /* this */
            invokevirtual org.apache.fop.pdf.PDFFont.validate:()V
         1: .line 180
            aload 0 /* this */
            aload 1 /* stream */
            invokespecial org.apache.fop.pdf.PDFDictionary.output:(Ljava/io/OutputStream;)I
            ireturn
        end local 1 // java.io.OutputStream stream
        end local 0 // org.apache.fop.pdf.PDFFont this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lorg/apache/fop/pdf/PDFFont;
            0    2     1  stream  Ljava/io/OutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      stream  
}
SourceFile: "PDFFont.java"