Share via


SCRIPT_CONTROL 구조체(usp10.h)

여러 Uniscribe 함수(예: ScriptItemize)에 대한 스크립트 컨트롤 플래그를 포함합니다.

구문

typedef struct tag_SCRIPT_CONTROL {
  DWORD uDefaultLanguage : 16;
  DWORD fContextDigits : 1;
  DWORD fInvertPreBoundDir : 1;
  DWORD fInvertPostBoundDir : 1;
  DWORD fLinkStringBefore : 1;
  DWORD fLinkStringAfter : 1;
  DWORD fNeutralOverride : 1;
  DWORD fNumericOverride : 1;
  DWORD fLegacyBidiClass : 1;
  DWORD fMergeNeutralItems : 1;
  DWORD fUseStandardBidi : 1;
  DWORD fReserved : 6;
} SCRIPT_CONTROL;

멤버

uDefaultLanguage

유니코드 값이 모호할 때 사용할 언어의 기본 언어 식별자 입니다. 이 값은 숫자 처리에서 SCRIPT_STATEfDigitSubstitute 멤버가 설정된 경우 숫자 셰이프를 선택하는 데 사용됩니다.

fContextDigits

국가 숫자를 선택하는 방법을 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
가장 가까운 이전의 강력한 텍스트에 따라 국가 숫자를 선택합니다.
FALSE
uDefaultLanguage 멤버의 값에 따라 국가별 숫자를 선택합니다.

fInvertPreBoundDir

초기 컨텍스트가 기본 포함 수준과 반대 또는 기본 포함 수준 자체로 설정되어 있는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 애플리케이션은 문자열 시작 부분에 있는 텍스트가 기본 포함 수준이 0인 경우 강력한 왼쪽에서 오른쪽 문자를 따르는 것처럼, 기본 포함 수준이 1인 경우 강력한 오른쪽에서 왼쪽 문자를 따르는 것처럼 기본적으로 배치됨을 나타내도록 이 멤버를 설정합니다. 이 멤버는 GetCharacterPlacement 레거시 지원에 사용됩니다.

의미
TRUE
초기 컨텍스트를 기본 포함 수준과 반대로 변경합니다.
FALSE
초기 컨텍스트를 기본 포함 수준으로 설정합니다.

fInvertPostBoundDir

최종 컨텍스트가 기본 포함 수준과 반대 또는 기본 포함 수준 자체로 설정되어 있는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 애플리케이션은 문자열의 끝에 있는 텍스트가 기본 포함 수준과 동일한 방향의 강력한 텍스트 앞에 오는 것처럼 기본적으로 배치됨을 나타내도록 이 멤버를 설정합니다. GetCharacterPlacement 레거시 지원에 사용됩니다.

의미
TRUE
최종 컨텍스트를 기본 포함 수준과 반대로 변경합니다.
FALSE
최종 컨텍스트를 기본 포함 수준으로 설정합니다.

fLinkStringBefore

셰이핑 엔진이 문자열의 첫 번째 문자를 이전 문자와 조인하는 것처럼 셰이핑하는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
이전 문자와 연결하여 첫 번째 문자를 셰이프합니다.
FALSE
이전 문자와 연결하여 첫 번째 문자를 셰이프하지 마세요.

fLinkStringAfter

셰이핑 엔진이 문자열의 마지막 문자를 후속 문자에 조인하는 것처럼 셰이핑할지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
후속 문자와 연결하여 마지막 문자를 셰이프합니다.
FALSE
후속 문자와 연결하여 마지막 문자를 셰이프하지 마세요.

fNeutralOverride

문자열에 있는 모든 중립 문자의 처리를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
중립 항목을 현재 포함 수준에 따라 오른쪽에서 왼쪽 또는 왼쪽에서 오른쪽으로 강한 방향으로 설정합니다. 이 설정은 항목을 효과적으로 잠그고 중립 항목 간에만 순서를 다시 지정합니다.
FALSE
중립 항목을 강력한 방향으로 설정하지 마세요.

fNumericOverride

문자열의 모든 숫자 문자 처리를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
현재 포함 수준에 따라 숫자 문자를 오른쪽에서 왼쪽으로 또는 왼쪽에서 오른쪽으로 강한 방향으로 설정합니다. 이 설정은 항목을 효과적으로 잠그고 순서를 다시 지정하는 작업은 숫자 문자 사이에서만 발생합니다.
FALSE
숫자 문자를 강력한 방향으로 설정하지 마세요.

fLegacyBidiClass

셰이핑 엔진에 의한 더하기 및 빼기 문자에 대한 처리를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
Windows XP 이전 운영 체제의 레거시 양방향 클래스에 대해 더하기 및 빼기 문자를 처리합니다. 이 경우 문자는 중립 문자, 즉 묵시적 방향 없이 처리되고 슬래시 문자는 공통 구분 기호로 처리됩니다.
FALSE
Windows XP 이상에 대해 더하기 및 빼기 문자를 처리합니다. 이 경우 문자는 유럽 구분 기호로 처리됩니다.

fMergeNeutralItems

가능하면 셰이핑 엔진이 중립 문자를 강력한 항목에 병합해야 하는지를 지정하는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
중립 문자를 강력한 항목에 병합합니다.
FALSE
중립 문자를 강력한 항목에 병합하지 마세요.

fUseStandardBidi

셰이핑 엔진이 표준 양방향 일치 쌍 알고리즘을 사용해야 하는지를 지정하는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다.

의미
TRUE
일치하는 쌍 알고리즘을 건너뜁니다.
FALSE
일치하는 쌍 알고리즘을 사용합니다.

fReserved

예약; 항상 0으로 초기화합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
머리글 usp10.h
재배포 가능 파일 인터넷 Explorer 5 이상에서Windows Me/98/95

추가 정보

숫자 셰이프

SCRIPT_STATE

ScriptItemize

Uniscribe

유니스크립스 구조체