SCRIPT_ANALYSIS 구조체(usp10.h)
유니코드 문자열, 즉 "item"의 일부를 포함합니다.
구문
typedef struct tag_SCRIPT_ANALYSIS {
WORD eScript : 10;
WORD fRTL : 1;
WORD fLayoutRTL : 1;
WORD fLinkBefore : 1;
WORD fLinkAfter : 1;
WORD fLogicalOrder : 1;
WORD fNoGlyphIndex : 1;
SCRIPT_STATE s;
} SCRIPT_ANALYSIS;
멤버
eScript
항목에 대한 ScriptShape, ScriptPlace 및 ScriptTextOut 함수를 호출할 때 Uniscribe에서 사용하는 엔진을 식별하는 불투명 값입니다. 이 멤버의 값은 정의되지 않으며 애플리케이션은 해당 값이 한 릴리스에서 다음 릴리스로 동일하지 않아야 합니다. 애플리케이션은 ScriptGetProperties를 호출하여 eScript의 특성을 가져올 수 있습니다.
셰이핑을 사용하지 않도록 설정하려면 애플리케이션에서 이 멤버를 SCRIPT_UNDEFINED 설정해야 합니다.
fRTL
렌더링 방향을 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 이 멤버는 왼쪽에서 오른쪽 실행의 숫자에 대해 TRUE 로 설정됩니다. 숫자가 항상 왼쪽에서 오른쪽으로 표시되고 오른쪽에서 왼쪽 실행의 숫자에 대해서는 FALSE 가 표시되기 때문입니다. 이 멤버의 값은 일반적으로 유니코드 포함 수준의 패리티와 동일하지만 GetCharacterPlacement 레거시 지원에 의해 재정의되는 경우 다를 수 있습니다.
값 | 의미 |
---|---|
|
오른쪽에서 왼쪽 렌더링 방향을 사용합니다. |
|
왼쪽에서 오른쪽 렌더링 방향을 사용합니다. |
fLayoutRTL
숫자의 레이아웃 방향을 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 이 멤버는 일반적으로 오른쪽에서 왼쪽 실행의 숫자에 대해 fRTL 에 할당된 값과 동일합니다.
값 | 의미 |
---|---|
|
오른쪽에서 왼쪽 시퀀스의 일부로 읽기 때문에 오른쪽에서 왼쪽 실행으로 숫자를 배치합니다. |
|
왼쪽에서 오른쪽 시퀀스의 일부로 읽기 때문에 왼쪽에서 오른쪽 실행으로 숫자를 배치합니다. |
fLinkBefore
셰이핑 엔진이 항목의 첫 번째 문자를 이전 문자와 조인하는 것처럼 셰이핑하는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 이 멤버는 ScriptItemize에 의해 설정됩니다. 애플리케이션은 ScriptShape를 호출하기 전에 값을 재정의할 수 있습니다.
값 | 의미 |
---|---|
|
이전 문자와 연결하여 첫 번째 문자를 셰이프합니다. |
|
이전 문자와 연결하여 첫 번째 문자를 셰이프하지 마세요. |
fLinkAfter
셰이핑 엔진이 항목의 마지막 문자를 후속 문자와 조인하는 것처럼 셰이핑하는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 이 멤버는 ScriptItemize에 의해 설정됩니다. 애플리케이션은 ScriptItemize를 호출하기 전에 값을 재정의할 수 있습니다.
값 | 의미 |
---|---|
|
후속 문자와 연결하여 마지막 문자를 셰이프합니다. |
|
후속 문자와 연결하여 마지막 문자를 셰이프하지 마세요. |
fLogicalOrder
셰이핑 엔진이 모든 문자 모양 관련 배열을 논리적 순서로 생성하는지 여부를 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 이 멤버는 ScriptItemize에 의해 FALSE로 설정됩니다. 애플리케이션은 ScriptShape를 호출하기 전에 값을 재정의할 수 있습니다.
값 | 의미 |
---|---|
|
모든 문자 모양 관련 배열을 논리적 순서로 생성합니다. |
|
맨 왼쪽 문자 모양에 해당하는 첫 번째 배열 항목을 사용하여 모든 문자 모양 관련 배열을 시각적 순서로 생성합니다. 이 값은 기본값입니다. |
fNoGlyphIndex
항목에 문자 모양 사용을 나타내는 값입니다. 가능한 값은 다음 표에 정의되어 있습니다. 애플리케이션은 ScriptShape 입력 시 이 멤버를 TRUE로 설정하여 항목에 문자 모양을 사용하지 않도록 설정할 수 있습니다. 또한 ScriptShape 는 기호화, 인식할 수 없음 및 디바이스 글꼴이 포함된 하드웨어 컨텍스트에 대해 TRUE 로 설정합니다.
문자 모양 사용을 사용하지 않도록 설정하면 복잡한 스크립트 셰이핑도 비활성화됩니다. 이 멤버를 TRUE 로 설정하면 GetTextExtentExPoint 및 ExtTextOut 호출을 통해 직접 셰이핑 및 배치가 구현 됩니다.
값 | 의미 |
---|---|
|
항목에 대한 문자 모양 사용을 사용하지 않도록 설정합니다. 이 값은 비트맵, 벡터 및 디바이스 글꼴에 사용됩니다. |
|
항목에 문자 모양을 사용하도록 설정합니다. 이 값은 기본값입니다. |
s
유니코드 알고리즘 상태의 복사본을 포함하는 SCRIPT_STATE 구조체입니다.
설명
이 구조체는 각각 유니코드 문자열을 개별적으로 셰이핑 가능한 항목으로 분할하는 ScriptItemize 또는 ScriptItemizeOpenType으로 채워집니다. 두 함수 모두 SCRIPT_ANALYSIS 구조체에 직접 액세스하지 않습니다. 각 함수는 SCRIPT_ITEM 구조체의 배열을 처리하며, 각 구조체에는 SCRIPT_ANALYSIS 구조를 정의하는 멤버가 있습니다.
ScriptItemize 대신 ScriptItemizeOpenType을 사용하는 애플리케이션은 ScriptShape 및 ScriptPlace 대신 ScriptShapeOpenType 및 ScriptPlaceOpenType도 사용해야 합니다. 자세한 내용은 Uniscribe를 사용하여 텍스트 표시를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | usp10.h |
재배포 가능 파일 | 인터넷 Explorer 5 이상에서Windows Me/98/95 |