// Copyright (c) Six Labors. // Licensed under the Six Labors Split License. using SixLabors.Fonts.Unicode; using System.Collections.Generic; namespace SixLabors.Fonts { /// /// Contains the width-independent result of shaping text before logical line composition. /// internal readonly struct ShapedText { /// /// Initializes a new instance of the struct. /// /// The positioned glyph shaping collection. /// The resolved bidi runs covering the shaped text. /// The code point to bidi-run mapping built during shaping. /// The layout mode used while shaping. public ShapedText( GlyphPositioningCollection positionings, BidiRun[] bidiRuns, Dictionary bidiMap, LayoutMode layoutMode) { this.Positionings = positionings; this.BidiRuns = bidiRuns; this.BidiMap = bidiMap; this.LayoutMode = layoutMode; } /// /// Gets the positioned glyph shaping collection. /// public GlyphPositioningCollection Positionings { get; } /// /// Gets the resolved bidi runs covering the shaped text. /// public BidiRun[] BidiRuns { get; } /// /// Gets the code point to bidi-run mapping built during shaping. /// public Dictionary BidiMap { get; } /// /// Gets the layout mode used while shaping. /// public LayoutMode LayoutMode { get; } } }