void RenderElement(DocumentObject docObj)
{
string typeName = docObj.GetType().Name;
switch (typeName)
{
case "Text":
if (IsBlank(docObj))
RenderBlank();
else if (IsSoftHyphen(docObj))
RenderSoftHyphen();
else
RenderText((Text)docObj);
break;
case "Character":
RenderCharacter((Character)docObj);
break;
case "DateField":
RenderDateField((DateField)docObj);
break;
case "InfoField":
RenderInfoField((InfoField)docObj);
break;
case "NumPagesField":
RenderNumPagesField((NumPagesField)docObj);
break;
case "PageField":
RenderPageField((PageField)docObj);
break;
case "SectionField":
RenderSectionField((SectionField)docObj);
break;
case "SectionPagesField":
RenderSectionPagesField((SectionPagesField)docObj);
break;
case "BookmarkField":
RenderBookmarkField();
break;
case "PageRefField":
RenderPageRefField((PageRefField)docObj);
break;
case "Image":
RenderImage((Image)docObj);
break;
// default:
// throw new NotImplementedException(typeName + " is coming soon...");
}
}