NAME(NAMEBASE_GSUB + i, gsub_features[i].name);
printf(" </name>\n");
- printf(" <cmap><tableVersion version='0'/>\n");
- docmap(0, 3, 4); /* Unicode 2.0+, BMP only */
- docmap(0, 4, 12); /* Unicode 2.0+, full repertoire */
- docmap(3, 1, 4); /* Windows Unicode, BMP only */
- docmap(3, 10, 12); /* Windows Unicode, full repertoire */
- printf(" </cmap>\n");
-
printf(" <post>\n");
TTXS("formatType", "3.0");
TTXS("italicAngle", "0.0");
qsort(glyphs_by_name, nglyphs, sizeof(glyphs_by_name[0]),
&compare_glyphs_by_name);
+ printf(" <GlyphOrder>\n");
+ for (i = 0; i < nglyphs; i++)
+ printf(" <GlyphID name='%s'/>\n", glyphs[i].name);
+ printf(" </GlyphOrder>\n");
+
+ printf(" <cmap><tableVersion version='0'/>\n");
+ docmap(0, 3, 4); /* Unicode 2.0+, BMP only */
+ docmap(0, 4, 12); /* Unicode 2.0+, full repertoire */
+ docmap(3, 1, 4); /* Windows Unicode, BMP only */
+ docmap(3, 10, 12); /* Windows Unicode, full repertoire */
+ printf(" </cmap>\n");
+
dogpos(); /* Must be before 'CFF ' because it uses glyph bitmaps. */
+ dogsub();
printf(" <CFF>\n");
TTXI("major", 1); TTXI("minor", 0);
printf(" </CharStrings>\n");
printf(" </CFFFont>\n");
printf(" </CFF>\n");
- printf(" <GlyphOrder>\n");
- for (i = 0; i < nglyphs; i++)
- printf(" <GlyphID name='%s'/>\n", glyphs[i].name);
- printf(" </GlyphOrder>\n");
printf(" <hmtx>\n");
for (i = 0; i < nglyphs; i++)
printf(" <mtx name='%s' width='%d' lsb='%d'/>\n",
glyphs[i].name, (int)(XSIZE * XPIX),
(int)realglyph(&glyphs[i])->left_sidebearing);
printf(" </hmtx>\n");
- dogsub();
printf("</ttFont>\n");
return EXIT_SUCCESS;
}