Index_to_charcode_map ic_map (make_index_to_charcode_map (face));
+ int output_count = 0;
for (int i = 0; i < mp->numGlyphs; i++)
{
glyph_name[0] = 0;
}
}
- if (!glyph_name[0])
+ if (!glyph_name[0] && ic_map.find (i) != ic_map.end ())
{
- get_unicode_name (glyph_name, ic_map[i]);
+ FT_ULong ucode = ic_map[i];
+ get_unicode_name (glyph_name, ucode);
}
-
- lily_cookie_fprintf (out, "/%s %d def ", glyph_name, i);
- if (! (i % 5))
+ if (glyph_name[0])
+ {
+ lily_cookie_fprintf (out, "/%s %d def ", glyph_name, i);
+ output_count ++;
+ }
+
+ if (! (output_count % 5))
lily_cookie_fprintf (out, "\n");
}