다음을 통해 공유


IDWriteFontFace5::GetFontAxisValues 메서드(dwrite_3.h)

글꼴에서 사용하는 축 값 목록을 검색합니다.

통사론

HRESULT GetFontAxisValues(
  [out] DWRITE_FONT_AXIS_VALUE *fontAxisValues,
        UINT32                 fontAxisValueCount
);

매개 변수

[out] fontAxisValues

형식: DWRITE_FONT_AXIS_VALUE*

GetFontAxisValues 글꼴 축 값 목록을 작성하는 DWRITE_FONT_AXIS_VALUE 구조체 배열에 대한 포인터입니다. 이 배열의 크기와 수명을 관리할 책임이 있습니다. GetFontAxisValueCount 호출하여 할당할 배열의 크기를 결정합니다.

fontAxisValueCount

형식: UINT32

fontAxisValues가리키는 메모리 블록에 쓸 글꼴 축 값의 최대 수입니다.

반환 값

형식: HRESULT

함수가 성공하면 S_OK반환합니다. 그렇지 않으면 HRESULT오류 코드반환합니다.

반환 값 묘사
E_INVALIDARG GetFontAxisValueCount반환된 값과 일치하지 않습니다.

발언

값은 글꼴로 정의된 정식 순서로 반환되며 지원되는 실제 범위로 고정됩니다. CreateFontFace전달한 축 값 배열과 반드시 같은 것은 아닙니다.

예제

// main.cpp
#include <unknwn.h>
#include <winrt/base.h>
#include <dwrite_3.h>

int main()
{
	winrt::init_apartment();

	winrt::com_ptr<IDWriteFactory> factory;

	winrt::check_hresult(::DWriteCreateFactory(
		DWRITE_FACTORY_TYPE_SHARED,
		__uuidof(factory),
		reinterpret_cast<IUnknown**>(factory.put())));

	std::wstring filePath{ L"C:\\WINDOWS\\FONTS\\AGENCYB.TTF" };

	winrt::com_ptr<IDWriteFontFile> fontFile;

	factory->CreateFontFileReference(
		filePath.c_str(),
		nullptr,
		fontFile.put());

	std::array<IDWriteFontFile*, 1> fontFiles{ fontFile.get() };

	winrt::com_ptr<IDWriteFontFace> fontFace;

	winrt::check_hresult(factory->CreateFontFace(
		DWRITE_FONT_FACE_TYPE_TRUETYPE,
		1,
		fontFiles.data(),
		0,
		DWRITE_FONT_SIMULATIONS_NONE,
		fontFace.put()
	));

	winrt::com_ptr<IDWriteFontFace5> fontFace5{ fontFace.as<IDWriteFontFace5>() };
	
	UINT32 axisValueCount{ fontFace5->GetFontAxisValueCount() };

	DWRITE_FONT_AXIS_VALUE* axisValues{ new DWRITE_FONT_AXIS_VALUE[axisValueCount] };

	winrt::check_hresult(
		fontFace5->GetFontAxisValues(axisValues, axisValueCount));

	DWRITE_FONT_AXIS_VALUE* eachAxisValue{ axisValues };

	for (int ix = 0; ix < axisValueCount; ++ix, ++eachAxisValue)
	{
		printf("%zu,%f\n\r", eachAxisValue->axisTag, eachAxisValue->value);
	}

	delete[] axisValues;
}

요구 사항

요구
지원되는 최소 클라이언트 Windows 10 빌드 16299
지원되는 최소 서버 Windows 10 빌드 16299
대상 플랫폼 Windows
헤더 dwrite_3.h
라이브러리 Dwrite.lib