code: private void createCMaps() {
          cmaps = new java.util.ArrayList();
          TTFCmapEntry tce = new TTFCmapEntry();
  
          Iterator e = unicodeMapping.listIterator();
          UnicodeMapping um = (UnicodeMapping)e.next();
          UnicodeMapping lastMapping = um;
  
          tce.setUnicodeStart(um.getUnicodeIndex());
          tce.setGlyphStartIndex(um.getGlyphIndex());
  
          while (e.hasNext()) {
              um = (UnicodeMapping)e.next();
              if (((lastMapping.getUnicodeIndex() + 1) != um.getUnicodeIndex())
                      || ((lastMapping.getGlyphIndex() + 1) != um.getGlyphIndex())) {
                  tce.setUnicodeEnd(lastMapping.getUnicodeIndex());
                  cmaps.add(tce);
  
                  tce = new TTFCmapEntry();
                  tce.setUnicodeStart(um.getUnicodeIndex());
                  tce.setGlyphStartIndex(um.getGlyphIndex());
              }
              lastMapping = um;
          }
  
          tce.setUnicodeEnd(um.getUnicodeIndex());
          cmaps.add(tce);
      }
docs: Create teh CMAPS table