Skip to content

TBLGlyphRun

TBLGlyphRun describes a set of consecutive glyphs and their placements.

TBLGlyphRun should only be used to pass glyph IDs and their placements to the rendering context. The purpose of TBLGlyphRun is to allow rendering glyphs, which could be shaped by various shaping engines (Blend2D, Harfbuzz, etc).

TBLGlyphRun allows to render glyphs that are stored as UInt32[] array or part of a bigger structure (for example hb_glyph_info_t used by HarfBuzz). Glyph placements at the moment use Blend2D's TBLGlyphPlacement or TBLPoint, but it's possible to extend the data type in the future.

Definition

Unit: Blend2D

type TBLGlyphRun = record ... end;

See Also

Properties

Name Description
Flags Glyph-run flags.
GlyphAdvance Advance of GlyphData array.
GlyphData Glyph id data (abstract, incremented by GlyphAdvance).
GlyphDataAsGlyphIds
IsEmpty
PlacementAdvance Advance of PlacementData array.
PlacementData Glyph placement data (abstract, incremented by PlacementAdvance).
PlacementDataAsGlyphPlacements
PlacementDataAsPoints
PlacementType Type of placement.
Size Size of the glyph-run in glyph units.

Methods

Name Description
Reset
ResetGlyphIdData
ResetPlacementData
SetGlyphData(Pointer, ShortInt)
SetGlyphData(PBLGlyphId)
SetPlacementData(Pointer, ShortInt)
SetPlacementData(PBLPoint)
SetPlacementData(PBLGlyphPlacement)

Property Descriptions

Flags

Glyph-run flags.

property Flags: TBLGlyphRunFlags read GetFlags

Type: TBLGlyphRunFlags


GlyphAdvance

Advance of GlyphData array.

property GlyphAdvance: ShortInt read FGlyphAdvance

Type: ShortInt


GlyphData

Glyph id data (abstract, incremented by GlyphAdvance).

property GlyphData: Pointer read FGlyphData

Type: Pointer


GlyphDataAsGlyphIds

property GlyphDataAsGlyphIds: PBLGlyphId read GetGlyphDataAsGlyphIds

Type: PBLGlyphId


IsEmpty

property IsEmpty: Boolean read GetIsEmpty

Type: Boolean


PlacementAdvance

Advance of PlacementData array.

property PlacementAdvance: ShortInt read FPlacementAdvance

Type: ShortInt


PlacementData

Glyph placement data (abstract, incremented by PlacementAdvance).

property PlacementData: Pointer read FPlacementData

Type: Pointer


PlacementDataAsGlyphPlacements

property PlacementDataAsGlyphPlacements: PBLGlyphPlacement read GetPlacementDataAsGlyphPlacements

Type: PBLGlyphPlacement


PlacementDataAsPoints

property PlacementDataAsPoints: PBLPoint read GetPlacementDataAsPoints

Type: PBLPoint


PlacementType

Type of placement.

property PlacementType: TBLGlyphPlacementType read GetPlacementType

Type: TBLGlyphPlacementType


Size

Size of the glyph-run in glyph units.

property Size: NativeInt read GetSize

Type: NativeInt


Method Descriptions

Reset

procedure Reset; inline


ResetGlyphIdData

procedure ResetGlyphIdData; inline


ResetPlacementData

procedure ResetPlacementData; inline


SetGlyphData(Pointer, ShortInt)

procedure SetGlyphData(const AData: Pointer; const AAdvance: ShortInt); overload; inline

Parameters

AData: Pointer

AAdvance: ShortInt


SetGlyphData(PBLGlyphId)

procedure SetGlyphData(const AGlyphData: PBLGlyphId); overload; inline

Parameters

AGlyphData: PBLGlyphId


SetPlacementData(Pointer, ShortInt)

procedure SetPlacementData(const AData: Pointer; const AAdvance: ShortInt); overload; inline

Parameters

AData: Pointer

AAdvance: ShortInt


SetPlacementData(PBLPoint)

procedure SetPlacementData(const AData: PBLPoint); overload; inline

Parameters

AData: PBLPoint


SetPlacementData(PBLGlyphPlacement)

procedure SetPlacementData(const AData: PBLGlyphPlacement); overload; inline

Parameters

AData: PBLGlyphPlacement