ScriptPositionSingleGlyph 함수(usp10.h)
OpenType 처리를 위해 글꼴에 제공된 지정된 기능을 사용하여 단일 조정으로 단일 문자 모양을 배치합니다. 대부분의 경우 애플리케이션은 이 함수를 사용하여 선의 시작 또는 끝에 문자 모양을 광학적으로 정렬합니다.
구문
HRESULT ScriptPositionSingleGlyph(
[in, optional] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in, optional] SCRIPT_ANALYSIS *psa,
[in] OPENTYPE_TAG tagScript,
[in] OPENTYPE_TAG tagLangSys,
[in] OPENTYPE_TAG tagFeature,
[in] LONG lParameter,
[in] WORD wGlyphId,
[in] int iAdvance,
[in] GOFFSET GOffset,
[out] int *piOutAdvance,
[out] GOFFSET *pOutGoffset
);
매개 변수
[in, optional] hdc
디바이스 컨텍스트에 대한 핸들입니다. 자세한 내용은 캐싱합니다.
[in, out] psc
스크립트 캐시를 식별하는 SCRIPT_CACHE 구조체에 대한 포인터입니다.
[in, optional] psa
ScriptItemizeOpenType에 대한 이전 호출에서 가져온 SCRIPT_ANALYSIS 구조체에 대한 포인터입니다. 이 구조체는 선진 너비를 검색할 수 있도록 셰이핑 엔진을 식별합니다.
또는 애플리케이션에서 이 매개 변수를 NULL 로 설정하여 필터링되지 않은 결과를 검색할 수 있습니다.
[in] tagScript
셰이핑을 위한 스크립트 태그를 정의하는 OPENTYPE_TAG 구조체입니다.
[in] tagLangSys
셰이핑을 위한 언어 태그를 정의하는 OPENTYPE_TAG 구조체입니다.
[in] tagFeature
대체 문자 모양을 지정하는 데 사용할 기능 태그를 정의하는 OPENTYPE_TAG 구조체입니다.
[in] lParameter
wGlyphId에 지정된 식별자에 단일 대체를 적용해야 하는지를 지정하는 플래그입니다. 애플리케이션은 이 매개 변수를 1로 설정하여 단일 대체 기능을 식별자에 적용합니다. 함수가 기능을 적용하지 않아야 하는 경우 애플리케이션은 매개 변수를 0으로 설정합니다.
[in] wGlyphId
셰이프의 원래 문자 모양 식별자입니다.
[in] iAdvance
원래 문자 모양 사전 너비입니다.
[in] GOffset
원래 문자 모양 오프셋입니다. 일반적으로 이 값은 ScriptPlaceOpenType 또는 ScriptPlace의 출력입니다.
[out] piOutAdvance
이 함수가 대체 문자 모양에 맞게 조정된 새 고급 너비를 검색하는 위치에 대한 포인터입니다.
[out] pOutGoffset
이 함수가 대체 문자 모양에 맞게 조정된 새 문자 모양 오프셋을 검색하는 위치에 대한 포인터입니다.
반환 값
정상적으로 실행되는 경우 0을 반환합니다. 함수가 성공하지 못하면 0이 아닌 HRESULT 값을 반환합니다. 애플리케이션은 SUCCEEDED 및 FAILED 매크로를 사용하여 반환 값을 테스트 할 수 있습니다.
설명
이 함수는 지정된 문자 모양의 앞 너비 및/또는 오프셋을 조정하여 개별 문자 모양을 배치합니다. 함수는 글꼴에 하나의 조정만 필요하다고 가정합니다.
이 함수의 일반적인 사용은 특정 문자의 시각적 인상을 고려하기 위해 여백을 약간 조정하는 것입니다. 예를 들어 라틴어 스크립트에서 선의 시작 부분에서 문자 모양 왼쪽에 세로줄이 없는 초기 대문자(예: "T" 또는 "O")에 대해 왼쪽을 약간 조정하는 것이 일반적입니다. 이렇게 하면 엄격한 선형 여백이 끊어지지만 눈은 여백을 더 균등하게 인식합니다.
다음 예제에서는 이 효과를 보여 줍니다. 첫 번째 예제에서는 엄격한 맞춤을 보여 하며, 다음 두 예제에서는 초기 "T"를 왼쪽으로 조정하는 방법을 보여 줍니다. 조정은 각각 1픽셀과 2픽셀입니다. 오른쪽의 확대된 이미지는 "T"가 각 연속 사례에서 왼쪽 여백으로 약간 더 멀리 푸시하는 방법을 보여 줍니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2008 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | usp10.h |
라이브러리 | Usp10.lib |
DLL | Usp10.dll |
재배포 가능 파일 | Windows XP에서 Usp10.dll 버전 1.600 이상 |