ComponentOne Bitmap for WinForms
C1.Win.C1DX.4.5.2 Assembly / C1.Util.DX.DirectWrite Namespace / TextLayout Class / HitTestTextRange Method / HitTestTextRange(Int32,Int32,Single,Single) Method
The first text position of the specified range.
The number of positions of the specified range.
The origin pixel location X at the left of the layout box. This offset is added to the hit-test metrics returned.
The origin pixel location Y at the top of the layout box. This offset is added to the hit-test metrics returned.

In This Topic
    HitTestTextRange(Int32,Int32,Single,Single) Method
    In This Topic
    The application calls this function to get a set of hit-test metrics corresponding to a range of text positions. One of the main usages is to implement highlight selection of the text string. The function returns E_NOT_SUFFICIENT_BUFFER, which is equivalent to HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER), when the buffer size of hitTestMetrics is too small to hold all the regions calculated by the function. In this situation, the function sets the output value *actualHitTestMetricsCount to the number of geometries calculated. The application is responsible for allocating a new buffer of greater size and calling the function again. A good value to use as an initial value for maxHitTestMetricsCount may be calculated from the following equation: maxHitTestMetricsCount = lineCount * maxBidiReorderingDepth where lineCount is obtained from the value of the output argument *actualLineCount (from the function IDWriteTextLayout::GetLineLengths), and the maxBidiReorderingDepth value from the DWRITE_TEXT_METRICS structure of the output argument *textMetrics (from the function IDWriteFactory::CreateTextLayout).
    Syntax
    'Declaration
     
    Public Overloads Function HitTestTextRange( _
       ByVal textPosition As System.Integer, _
       ByVal textLength As System.Integer, _
       ByVal originX As System.Single, _
       ByVal originY As System.Single _
    ) As HitTestMetrics()
    public HitTestMetrics[] HitTestTextRange( 
       System.int textPosition,
       System.int textLength,
       System.float originX,
       System.float originY
    )

    Parameters

    textPosition
    The first text position of the specified range.
    textLength
    The number of positions of the specified range.
    originX
    The origin pixel location X at the left of the layout box. This offset is added to the hit-test metrics returned.
    originY
    The origin pixel location Y at the top of the layout box. This offset is added to the hit-test metrics returned.

    Return Value

    a reference to a buffer of the output geometry fully enclosing the specified position range. The buffer must be at least as large as maxHitTestMetricsCount.
    See Also