Calculates the total sum of all advance values from rendering the specified substring of the characters.
HRESULT getSubStringLength( long charnum, long nchars, float *pResult );
- [in] The index of the first character in the substring, where the first character has an index of 0.
- [in] The number of characters in the substring. If the nchars parameter specifies more characters than are available, the substring consists of all characters starting with the charnum character until the end of the list of characters.
- [out, retval] The total text advance distance (i.e., substring length).
Returns S_OK if successful, or an error value otherwise.
The total text advance distance includes the advance value on the glyphs (horizontal or vertical), kerning effects, letter-spacing effects, word-spacing effects, and adjustments because of the dx and dy attributes on tSpan elements.
If multiple consecutive characters are rendered inseparably (for example, as a single glyph or a sequence of glyphs, or because the range encompasses half of a surrogate pair), and if the nchars parameter is greater than 0, the measured range (i.e., total advance distance) is expanded so that each of the inseparable characters are included.