How do I access fonts that are used within a specific region of a PDF page?

Q We need to check if certain fonts on a page are corrupt (i.e. if
they have scrambled encoding etc). Is there any way to use the text
extractor, or any other object to see what fonts are used in a certain
rectangle in a certain page?
If we could identify the corrupt fonts, we will not send them to the
printer driver...
------
A: You could can access pdftron.PDF.Fonts object through GState.GetFont
() property in Element object. You would need to use ElementReader
class (e.g. as shown in ElementReaderAdv) to iterate through all
content on a given page and element.GetBBox(rect) to obtain the
positioning information for every text run. You can also directly
enumerate all fonts on a given page by accessing fonts dictionary in
page.GetResources(). For example:

Obj fonts = page.GetResources().FindObj("Font");
if (fonts != null) {
  for (DictIterator itr = fonts.GetDictIterator(); itr.HasNext();
itr.Next()) {
     Font font = new Font(itr.Value());
     ... check if the font is corrupt ...
  }
}

Although this is simpler than using ElementReader, it does not offer
information about where the font is used on a page.