[]
        
(Showing Draft Content)

GrapeCity.Documents.DX.DirectWrite.ITextAnalysisSink1

Interface ITextAnalysisSink1

Namespace
GrapeCity.Documents.DX.DirectWrite
Assembly
GcDocs.DX.Windows.dll

IDWriteTextAnalysisSink1

[Guid("B0D941A0-85E7-4D8B-9FD3-5CED9934482A")]
[Shadow(typeof(TextAnalysisSink1Shadow))]
public interface ITextAnalysisSink1 : ITextAnalysisSink, ICallbackable, IDisposable
Inherited Members
System.IDisposable.Dispose()

Methods

SetGlyphOrientation(int, int, GlyphOrientationAngle, byte, Bool, Bool)

The text analyzer calls back to this to report the actual orientation of each character for shaping and drawing.

void SetGlyphOrientation(int textPosition, int textLength, GlyphOrientationAngle glyphOrientationAngle, byte adjustedBidiLevel, Bool isSideways, Bool isRightToLeft)

Parameters

textPosition int

The starting position to report from.

textLength int

Number of UTF-16 units of the reported range.

glyphOrientationAngle GlyphOrientationAngle

A GlyphOrientationAngle-typed value that specifies the angle of the glyphs within the text range (pass to GetGlyphOrientationTransform(GlyphOrientationAngle, Bool, out Matrix3x2) to get the world relative transform).

adjustedBidiLevel byte

The adjusted bidi level to be used by the client layout for reordering runs. This will differ from the resolved bidi level retrieved from the source for cases such as Arabic stacked top-to-bottom, where the glyphs are still shaped as RTL, but the runs are TTB along with any CJK or Latin.

isSideways Bool

Whether the glyphs are rotated on their side, which is the default case for CJK and the case stacked Latin

isRightToLeft Bool

Whether the script should be shaped as right-to-left. For Arabic stacked top-to-bottom, even when the adjusted bidi level is coerced to an even level, this will still be true.