API reference / Common / FontDescriptor
Interface: FontDescriptor
One family in one bold / italic style — the atomic unit font resolution works in, and the only selection input the font system takes.
Text analysis (script segmentation, the a:latin / a:ea / a:cs slot pick, direction) happens in the text layout's itemizer — by the time a request reaches the font system it names a concrete family. bold / italic are the OOXML run toggles, faithful to the model.
There is deliberately no weight axis. Office doesn't have one: a run carries a boolean (<w:b/>, b="1"), and everything that isn't regular-or-bold is a separate family name — Calibri Light, Segoe UI Semibold, Arial Black. Where a number is genuinely needed (Google's css2 wants wght@400) the mapping is one line in the host's fulfiller, at the edge.
A descriptor does not identify a font: one descriptor fans out into many FontEntrys — the same family and style offered by several vendors — which is why loaded fonts are keyed by FontEntryId, never by descriptor.
Properties
| Property | Description |
|---|---|
familystring | The typeface family name (e.g. "Calibri" or "Arial Narrow"). |
boldboolean | The bold toggle. |
italicboolean | The italic toggle. |