다음을 통해 공유


IDWriteFontFace::TryGetFontTable 메서드(dwrite.h)

지정한 OpenType 글꼴 테이블이 있으면 찾아 포인터를 반환합니다. 함수는 글꼴 파일 로더에 의해 구현된 IDWriteFontFileStream 인터페이스를 통해 기본 글꼴 데이터에 액세스합니다.

구문

HRESULT TryGetFontTable(
  [in]  UINT32     openTypeTableTag,
  [out] const void **tableData,
  [out] UINT32     *tableSize,
  [out] void       **tableContext,
  [out] BOOL       *exists
);

매개 변수

[in] openTypeTableTag

형식: UINT32

찾을 OpenType 글꼴 테이블의 4자 태그입니다. DWRITE_MAKE_OPENTYPE_TAG 매크로를 사용하여 UINT32로 만듭니다. GDI와 달리 전체 글꼴에 액세스하는 특수 TTCF 및 null 태그는 지원하지 않습니다.

[out] tableData

형식: const void**

이 메서드가 반환되면 메모리에 있는 테이블의 밑면에 대한 포인터의 주소가 포함됩니다. 포인터는 글꼴 테이블을 가져오는 데 사용되는 글꼴 면이 여전히 존재하는 경우에만 유효합니다. (실제로 동일한 실제 글꼴을 참조하는 경우에도 다른 글꼴 얼굴은 아님). 이 매개 변수는 초기화되지 않은 상태로 전달됩니다.

[out] tableSize

형식: UINT32*

이 메서드가 반환되면 글꼴 테이블의 크기(바이트)에 대한 포인터가 포함됩니다.

[out] tableContext

형식: void**

이 메서드가 반환되면 ReleaseFontTable을 호출하여 해제해야 하는 불투명 컨텍스트에 대한 포인터의 주소입니다. 컨텍스트는 실제로 애플리케이션 또는 DWrite 자체에 의해 구현될 수 있는 하위 수준 IDWriteFontFileStream에서 제공됩니다. 특히 구현이 전체 파일에서 직접 메모리 매핑을 수행하는 경우 NULLtableContext 가 반환될 수 있습니다. 그럼에도 불구하고 항상 나중에 릴리스하고 함수 성공을 위한 테스트로 사용하지 마세요. 동일한 테이블을 여러 번 쿼리할 수 있지만 반환된 각 컨텍스트가 다를 수 있으므로 각 컨텍스트를 개별적으로 해제해야 합니다.

[out] exists

형식: BOOL*

이 메서드가 반환되면 글꼴 테이블이 있으면 TRUE 입니다. 그렇지 않으면 FALSE입니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

동일한 태그에 대한 컨텍스트는 각 호출마다 다를 수 있으므로 각 태그를 별도로 보관하고 해제해야 합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7, Windows Vista SP2 및 Windows Vista용 플랫폼 업데이트가 포함된 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2, Windows Server 2008 SP2 및 Windows Server 2008용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 dwrite.h
라이브러리 Dwrite.lib
DLL Dwrite.dll

추가 정보

IDWriteFontFace