internal override void WriteFont(PdfWriter writer, PdfIndirectReference piref, Object[] parms)
{
int firstChar = (int)parms[0];
int lastChar = (int)parms[1];
byte[] shortTag = (byte[])parms[2];
bool subsetp = (bool)parms[3] && subset;
if (!subsetp) {
firstChar = 0;
lastChar = shortTag.Length - 1;
for (int k = 0; k < shortTag.Length; ++k)
shortTag[k] = 1;
}
PdfIndirectReference ind_font = null;
PdfObject pobj = null;
PdfIndirectObject obj = null;
pobj = GetFullFontStream();
if (pobj != null){
obj = writer.AddToBody(pobj);
ind_font = obj.IndirectReference;
}
pobj = GetFontDescriptor(ind_font);
if (pobj != null){
obj = writer.AddToBody(pobj);
ind_font = obj.IndirectReference;
}
pobj = GetFontBaseType(ind_font, firstChar, lastChar, shortTag);
writer.AddToBody(pobj, piref);
}