code: private final void readName(FontFileReader in) throws IOException {
          seekTab(in, "name", 2);
          int i = in.getCurrentPos();
          int n = in.readTTFUShort();
          int j = in.readTTFUShort() + i - 2;
          i += 2 * 2;
  
          while (n-- > 0) {
              // getLogger().debug("Iteration: " + n);
              in.seekSet(i);
              final int platformID = in.readTTFUShort();
              final int encodingID = in.readTTFUShort();
              final int languageID = in.readTTFUShort();
  
              int k = in.readTTFUShort();
              int l = in.readTTFUShort();
  
              if (((platformID == 1 || platformID == 3) 
                      && (encodingID == 0 || encodingID == 1))
                      && (k == 1 || k == 2 || k == 0 || k == 4 || k == 6)) {
                  in.seekSet(j + in.readTTFUShort());
                  String txt = in.readTTFString(l);
                  
                  log.debug(platformID + " " 
                      + encodingID + " "
                      + languageID + " "
                      + k + " " + txt);
                  switch (k) {
                  case 0:
                      notice = txt;
                      break;
                  case 1:
                      familyName = txt;
                      break;
                  case 2:
                      subFamilyName = txt;
                      break;
                  case 4:
                      fullName = txt;
                      break;
                  case 6:
                      fontName = txt;
                      break;
                  }
                  if (!notice.equals("")
                          && !fullName.equals("")
                          && !fontName.equals("")
                          && !familyName.equals("")
                          && !subFamilyName.equals("")) {
                      break;
                  }
              }
              i += 6 * 2;
          }
      }
docs: Read the "name" table.
  @param in FontFileReader to read from
  @throws IOException In case of a I/O problem