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
CIDFontType0descendant 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/fontsparts).
- EmbeddedFontUtilities
Utilities for DOCX embedded fonts: ODTTF de-obfuscation and
fontTable.xmlmetadata 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
glyfdata 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.