private ITag readDefineFont() throws IOException, MalformedTagException
{
final int id = bitStream.readUI16();
final int firstGlyphShapeOffset = bitStream.readUI16();
final int numGlyphs = firstGlyphShapeOffset / 2;
final DefineFontTag tag = new DefineFontTag();
tag.setCharacterID(id);
final long[] offsetTable = new long[numGlyphs];
offsetTable[0] = firstGlyphShapeOffset;
for (int i = 1; i < numGlyphs; i++)
{
offsetTable[i] = bitStream.readUI16();
}
tag.setOffsetTable(offsetTable);
final Shape[] glyphShapeTable = new Shape[numGlyphs];
for (int i = 0; i < numGlyphs; i++)
{
glyphShapeTable[i] = readShape(tag.getTagType());
}
tag.setGlyphShapeTable(glyphShapeTable);
return tag;
}