IDWriteTextAnalysisSink

<summary> The interface implemented by the text analyzer's client to receive the output of a given text analysis. The Text analyzer disregards any current state of the analysis sink, therefore a Set method call on a range overwrites the previously set analysis result of the same range. </summary>

Members

Functions

SetBidiLevel
HRESULT SetBidiLevel(UINT32 textPosition, UINT32 textLength, UINT8 explicitLevel, UINT8 resolvedLevel)

<summary> Set bidirectional level on the range, called once per each level run change (either explicit or resolved implicit). </summary> <param name="textPosition">Starting position to report from.</param> <param name="textLength">Number of UTF16 units of the reported range.</param> <param name="explicitLevel">Explicit level from embedded control codes RLE/RLO/LRE/LRO/PDF, determined before any additional rules.</param> <param name="resolvedLevel">Final implicit level considering the explicit level and characters' natural directionality, after all Bidi rules have been applied.</param> <returns> A successful code or error code to abort analysis. </returns>

SetLineBreakpoints
HRESULT SetLineBreakpoints(UINT32 textPosition, UINT32 textLength, const(DWRITE_LINE_BREAKPOINT)* lineBreakpoints)

<summary> Report line-break opportunities for each character, starting from the specified position. </summary> <param name="textPosition">Starting position to report from.</param> <param name="textLength">Number of UTF16 units of the reported range.</param> <param name="lineBreakpoints">Breaking conditions for each character.</param> <returns> A successful code or error code to abort analysis. </returns>

SetNumberSubstitution
HRESULT SetNumberSubstitution(UINT32 textPosition, UINT32 textLength, IDWriteNumberSubstitution numberSubstitution)

<summary> Set number substitution on the range. </summary> <param name="textPosition">Starting position to report from.</param> <param name="textLength">Number of UTF16 units of the reported range.</param> <param name="numberSubstitution">The number substitution applicable to the returned range of text. The sink callback may hold onto it by incrementing its ref count.</param> <returns> A successful code or error code to abort analysis. </returns> <remark> Unlike script and bidi analysis, where every character passed to the analyzer has a result, this will only be called for those ranges where substitution is applicable. For any other range, you will simply not be called. </remark>

SetScriptAnalysis
HRESULT SetScriptAnalysis(UINT32 textPosition, UINT32 textLength, const(DWRITE_SCRIPT_ANALYSIS)* scriptAnalysis)

<summary> Report script analysis for the text range. </summary> <param name="textPosition">Starting position to report from.</param> <param name="textLength">Number of UTF16 units of the reported range.</param> <param name="scriptAnalysis">Script analysis of characters in range.</param> <returns> A successful code or error code to abort analysis. </returns>

Meta