ScriptIsComplex (Compact 2013)

3/28/2014

This function determines whether a Unicode string requires complex script processing.

Syntax

HRESULT WINAPI ScriptIsComplex(
  const WCHAR* pwcInChars,
  int cInChars,
  DWORD dwFlags
);

Parameters

  • pwcInChars
    [in] Pointer to the string to be tested.
  • cInChars
    [in] Length of the string, in characters.
  • dwFlags
    [in] This parameter can be one of the following values.

    Value

    Description

    SIC_ASCIIDIGIT

    Treats digits U+0030 to U+0039 as complex. Set this flag if the string would be displayed with digit substitution enabled. If you are following the user's NLS settings using ScriptRecordDigitSubstitution, you can pass SCRIPT_DIGITSUBSTITUTE.DigitSubstitute != SCRIPT_DIGITSUBSTITUTE_NONE.

    SIC_COMPLEX

    Treats complex script letters as complex. This should normally be set.

    SIC_NEUTRAL

    Treats neutrals as complex. Set this flag if you might be displaying the string with RTL reading order.

Return Value

The function returns S_OK if the string requires complex script processing. The function returns S_FALSE if the string can be handled by standard API calls, that is, the string contains only characters laid out side-by-side and left-to-right. If any other unrecoverable error is encountered, it is returned as an HRESULT.

Requirements

Header

usp10.h

Library

Uspce.lib

See Also

Reference

Uniscribe Functions
ScriptRecordDigitSubstitution