Platform SDK: International Features

ScriptStringGetOrder

The ScriptStringGetOrder function creates an array that maps an original character position to a glyph position.

HRESULT WINAPI ScriptStringGetOrder(
  SCRIPT_STRING_ANALYSIS ssa, 
  UINT *puOrder 
);

Parameters

ssa
[in] A SCRIPT_STRING_ANALYSIS structure for the string.
puOrder
[out] Pointer to the array that receives the glyph positions, indexed by the original character position. The array should have room for at least *ScriptString_pcOutChars(ssa) ints.

Return Values

If the function is successful, it returns S_OK.

If the function fails, it returns another HRESULT value. And if any other unrecoverable error is encountered, it is also returned as HRESULT. For example, error returns from Win32 API functions are converted to HRESULT using the HRESULT_FROM_WIN32 macro and returned to the client in the HRESULT.

The return value can be tested with the SUCCEEDED and FAILED macros.

Remarks

When there are are an equal number of glyphs and characters, the function returns an array that references every glyph. This is the same treatment that occurs in GetCharacterPlacement.

This function requires that SSA_GLYPHS was requested in the original call to ScriptStringAnalyse.

Requirements

  Windows NT/2000: Requires Windows 2000.
  Header: Declared in Usp10.h.
  Library: Use Usp10.lib.

See Also

Uniscribe Overview, Uniscribe Functions, GetCharacterPlacement, ScriptStringAnalyse, ScriptString_pcOutChars, SCRIPT_STRING_ANALYSIS