One character code shown on a page as a HitTestIndex holds it: its box in page space, the Unicode text it stands for, the code and the rendering mode it was shown in.
public readonly record struct HitTestGlyph : IEquatable<HitTestGlyph>
ISO 32000-2 §9.4.4 (the text rendering matrix and the CTM), §9.2.4 (w0), §9.8.1 (Table 120, Ascent and Descent) and §9.10.2 (Unicode). Page space is default user space (§8.3.2.3), before the crop box, rotation and user unit; a viewer maps a device point into it through the inverse of its device transform. The box is the same as Quad: from the origin to w0 along the baseline and from the font's descent to its ascent across it, rotated, skewed or reflected with the text.
Each shown code is one glyph, in content order (the order the content shows them, §9.4.3), whatever font it is in (Type 3 included) and whatever its rendering mode (invisible text, mode 3, included); a code a substitute draws as several glyphs is still one. Members are added, never changed.
kind:method, kind:property, kind:ctor. Press Esc to clear.CharacterCodeGets the character code (§9.4.3): one byte for a simple font, one to four for a composite font's CMap.CodeLengthGets the number of bytes the code takes.IsVerticalGets a value indicating whether the font writes vertically.QuadGets the glyph's box in page space; corners named as in Quad (bottom on the baseline side, left at the origin).RenderingModeGets the text rendering mode the code was shown in; Invisible text paints nothing but is selectable.TextLengthGets how many UTF-16 units the glyph's text takes: 0 for a code mapped to no text, more than one for a ligature or a surrogate pair.