Table of Contents

Struct GlyphClusterMap

Namespace
DocWright.Core.Rendering
Assembly
DocWright.Core.dll

Logical-to-shaped mapping metadata for one rendered cluster.

public readonly struct GlyphClusterMap : IEquatable<GlyphClusterMap>
Implements
Inherited Members

Constructors

GlyphClusterMap(int, int, string, IReadOnlyList<ushort>)

Initializes one cluster mapping entry.

GlyphClusterMap(int, int, string, IReadOnlyList<ushort>, IReadOnlyList<GlyphPlacement>?)

Initializes a cluster whose glyphs carry their own placements: the advance and the offsets the shaper gave each glyph, one entry per glyph id, or null when every glyph sits at its nominal advance. A combining mark is a glyph with a zero advance and an offset back over its base; a pair adjustment is an advance that is not the width.

Properties

ClusterLength

Gets the UTF-16 length of the source segment.

ClusterStart

Gets the UTF-16 start index in the run text.

GlyphIds

Gets the shaped glyph IDs used for this cluster.

GlyphPlacements

Gets each glyph's advance and offsets as the shaper placed it, one per glyph id, or null when every glyph sits at its nominal advance with no offset (the case for text shaped from the character map alone).

UnicodeText

Gets the Unicode text represented by this cluster.

Methods

Equals(GlyphClusterMap)
Equals(object?)
GetHashCode()

Operators

operator ==(GlyphClusterMap, GlyphClusterMap)

Determines equality.

operator !=(GlyphClusterMap, GlyphClusterMap)

Determines inequality.