public void WriteFont(PdfWriter writer)
{
switch (fontType) {
case BaseFont.FONT_TYPE_T3:
baseFont.WriteFont(writer, indirectReference, null);
break;
case BaseFont.FONT_TYPE_T1:
case BaseFont.FONT_TYPE_TT: {
int firstChar;
int lastChar;
for (firstChar = 0; firstChar < 256; ++firstChar) {
if (shortTag[firstChar] != 0)
break;
}
for (lastChar = 255; lastChar >= firstChar; --lastChar) {
if (shortTag[lastChar] != 0)
break;
}
if (firstChar > 255) {
firstChar = 255;
lastChar = 255;
}
baseFont.WriteFont(writer, indirectReference, new Object[]{firstChar, lastChar, shortTag, subset});
break;
}
case BaseFont.FONT_TYPE_CJK:
baseFont.WriteFont(writer, indirectReference, new Object[]{cjkTag});
break;
case BaseFont.FONT_TYPE_TTUNI:
baseFont.WriteFont(writer, indirectReference, new Object[]{longTag, subset});
break;
}
}