code: function resolve(ttf) {
  
              // 头部信息
              ttf.version = ttf.version || 0x1;
              ttf.numTables = ttf.writeOptions.tables.length;
              ttf.entrySelector = Math.floor(Math.log(ttf.numTables) / Math.LN2);
              ttf.searchRange = Math.pow(2, ttf.entrySelector) * 16;
              ttf.rangeShift = ttf.numTables * 16 - ttf.searchRange;
  
              // 重置校验码
              ttf.head.checkSumAdjustment = 0;
              ttf.head.magickNumber = 0x5F0F3CF5;
  
              if (typeof ttf.head.created === 'string') {
                  ttf.head.created = /^\d+$/.test(ttf.head.created)
                      ? +ttf.head.created : Date.parse(ttf.head.created);
              }
              if (typeof ttf.head.modified === 'string') {
                  ttf.head.modified = /^\d+$/.test(ttf.head.modified)
                      ? +ttf.head.modified : Date.parse(ttf.head.modified);
              }
              // 重置日期
              if (!ttf.head.created) {
                  ttf.head.created = Date.now();
              }
              if (!ttf.head.modified) {
                  ttf.head.modified = ttf.head.created;
              }
  
              var checkUnicodeRepeat = {}; // 检查是否有重复代码点
  
              // 将glyf的代码点按小到大排序
              ttf.glyf.forEach(function (glyf, index) {
                  if (glyf.unicode) {
                      glyf.unicode = glyf.unicode.sort();
  
                      glyf.unicode.forEach(function (u) {
                          if (checkUnicodeRepeat[u]) {
                              error.raise({
                                  number: 10200,
                                  data: index
                              }, index);
                          }
                          else {
                              checkUnicodeRepeat[u] = true;
                          }
                      });
  
                  }
              });
  
          }
docs: 处理ttf结构，以便于写
  
  @param {ttfObject} ttf ttf数据结构