Table of Contents

Namespace DocWright.Fonts

Classes

CffSubsetResult

The outcome of subsetting a CFF font program.

CffSubsetter

Subsets a CFF font program down to a requested glyph set. The result is always CID-keyed with an Adobe-Identity-0 ordering and CID equal to subset glyph id, whatever the source was: that is the one shape a PDF CIDFontType0 descendant selects unambiguously, and it means a name-keyed and a CID-keyed source produce the same kind of output.

ClusterAdvanceBuffer

Reusable growable buffer for ClusterAdvance values.

EmbeddedFontReference

One style-specific embedded font reference parsed from DOCX fontTable.xml.

EmbeddedFontSource

One embedded font payload supplied to the font engine (for example from DOCX /word/fonts parts).

EmbeddedFontUtilities

Utilities for DOCX embedded fonts: ODTTF de-obfuscation and fontTable.xml metadata parsing.

FontEngine

Immutable font index + simple shaper for Word-compatible measurement over OpenType TTF/OTF/TTC sources.

FontEngineOptions

Configuration for building one immutable FontEngine instance.

FontFace

A loaded OpenType face with parsed metrics, cmap and optional kerning data.

FontPreflightReport

The result of a font preflight: one FontResolution per distinct font family referenced by a document, plus aggregate risk indicators. A caller can run this before paying for a full conversion to decide whether to install a font, accept the substitution, or abort.

FontVerticalMetrics

The single-line vertical metric rule: which of a face's three competing metric families determines its line height, and how that height converts to twips.

GlyphContour

One closed contour of a glyph outline. The contour starts at StartPoint, follows Segments in order, and is implicitly closed: the last segment's end point is joined back to StartPoint by a straight line when they differ.

GlyphOutline

A decoded glyph outline in font units: closed contours of line, quadratic and cubic segments. Produced by GlyphOutlineReader from either TrueType glyf data or CFF Type 2 charstrings; the two sources differ only in which segment kinds appear.

GlyphOutlineReader

Decodes glyph outlines from a font program. Outline access is deliberately separate from FontFace: a face carries metrics only, and the resolution cache holds many faces, so binding decoded outlines (or the font bytes they need) to a face would change the memory profile of every conversion. A caller that wants outlines supplies the program itself — the same font bytes a PDF embedder already loads — and decoding happens on demand.

GlyphRunPlanner

Turns a GlyphRun into the glyphs that draw it.

TextMeasurement

Immutable measurement result containing aggregate metrics and per-cluster advances.

Structs

ClusterAdvance

The measured advance for one text cluster.

FontKey

The requested logical font for one run: family + weight + stretch + style, plus optional PANOSE hint and kerning threshold semantics.

FontResolution

The detailed outcome of resolving one logical font request: the requested family, the family actually selected, the resolution step that succeeded, and — for non-exact outcomes — a PANOSE distance or the exact-metric-match flag. This is what a preflight report entry carries and what an end-of-conversion substitution summary aggregates.

GlyphBoundingBox

A glyph bounding box in font design units (fUnits), as read from glyf table headers.

GlyphOutlinePoint

One point of a glyph outline, in font units (fUnits) relative to the glyph origin. Outline coordinates are always integers: the decoders never scale, so a consumer converts to its own units at its own boundary using UnitsPerEm.

GlyphOutlineSegment

One segment of a glyph contour: a line, a quadratic Bézier or a cubic Bézier ending at EndPoint. The start point is the previous segment's end point (or the contour's StartPoint for the first segment).

Panose

A PANOSE-1 10-byte classification vector from the OpenType OS/2 table.

PlannedGlyphCluster

One cluster of a GlyphRun, resolved to the glyphs that draw it.

TextLineMetrics

Aggregate measurement metrics for one measured text run.

Enums

FontResolutionOutcome

How a requested font family was resolved, in descending fidelity order. Reported per resolution and surfaced by FontPreflightReport so a caller can decide whether to install a font, accept the substitution, or abort before a full conversion.

FontStyle

The requested or intrinsic slant style of a font face.

GlyphOutlineFormat

Which outline representation a font program carries.

GlyphOutlineSegmentKind

The kind of curve one GlyphOutlineSegment describes.