Retrieves information for determining line breaks.
HRESULT ScriptBreak( const WCHAR *pwcChars, int cChars, const SCRIPT_ANALYSIS *psa, SCRIPT_LOGATTR *psla );
Pointer to the Unicode characters to process.
Number of Unicode characters to process.
Pointer to a buffer in which this function retrieves the character attributes as a SCRIPT_LOGATTR structure.
Returns 0 if successful. The function returns a nonzero HRESULT value if it does not succeed. The application can test the return value with the SUCCEEDED and FAILED macros.
See Displaying Text with Uniscribe for a discussion of the context in which this function is normally called.
This function does not require a device context and does not perform glyph shaping.
This function retrieves cursor movement and formatting break positions for an item in an array of SCRIPT_LOGATTR structures. To support mixed formatting within a single word correctly, the call to ScriptBreak should pass whole items as retrieved by ScriptItemize, and not the finer formatting runs.
The SCRIPT_LOGATTR structure identifies valid caret positions and line breaks. The fCharStop member specifies a flag that marks cluster boundaries for scripts that are conventionally restricted from moving inside clusters. The same boundaries can also be inferred by inspecting the logical cluster information retrieved by ScriptShape. However, ScriptBreak is considerably faster in implementation and does not require a device context to be prepared.
The flags designated by the fWordStop, fSoftBreak, and fWhiteSpace members of SCRIPT_LOGATTR are only available through ScriptBreak.
Most shaping engines that identify invalid sequences set the flag indicated by the fInvalid member of SCRIPT_LOGATTR in ScriptBreak. The fInvalidLogAttr member of SCRIPT_PROPERTIES identifies the applicable scripts.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|Redistributable||Internet Explorer 5 or later on Windows Me/98/95|