다음을 통해 공유


IPrintCoreHelperPS::SetFontSubstitution 메서드(prcomoem.h)

IPrintCoreHelperPS::SetFontSubstitution 메서드는 지정된 TrueType 글꼴 대신 인쇄할 디바이스 글꼴을 지정합니다.

구문

HRESULT SetFontSubstitution(
  [in] IN PCWSTR pszTrueTypeFontName,
  [in] IN PCWSTR pszDevFontName
);

매개 변수

[in] pszTrueTypeFontName

유효한 TrueType 글꼴 이름을 포함하는 null로 끝나는 유니코드 문자열에 대한 포인터입니다. 이 매개 변수는 NULL이 아니어야 합니다.

[in] pszDevFontName

디바이스 글꼴의 이름을 포함하는 null로 끝나는 유니코드 문자열에 대한 포인터입니다.

반환 값

IPrintCoreHelperPS::GetFontSubstitution 은 다음 값 중 하나를 반환해야 합니다.

반환 코드 Description
S_OK
메서드는 지정된 기능에 대한 옵션을 읽습니다.
E_FAIL
요청된 글꼴이 없거나 TrueType 글꼴이 아닙니다.
E_INVALIDARG
하나 이상의 인수가 잘못된 경우
E_OUTOFMEMORY
메모리가 부족하여 핵심 드라이버가 요청을 처리할 수 없습니다.
E_UNEXPECTED 또는 여기에 나열되지 않은 기타 반환 코드
핵심 드라이버가 잘못된 상태인 것 같습니다. 호출자는 실패 코드를 반환해야 합니다.

설명

지정된 TrueType 글꼴 대신 사용할 디바이스 글꼴 설정은 디바이스 속성 시트 세션 동안에만 발생할 수 있으며 전체 UI 교체가 사용하도록 설정된 경우에만 발생할 수 있습니다. pszTrueTypeFontName 매개 변수로 표시되는 글꼴은 유효한 TrueType 글꼴이어야 하며 프린터에 설치해야 합니다. pszDevFontName 매개 변수로 표시되는 디바이스 글꼴은 이 프린터에 유효한 글꼴이어야 합니다.

지정된 TrueType 글꼴에 대한 대체 매핑이 이 큐에 이미 있는 경우 SetFontSubstitution 메서드는 매핑을 자동으로 대체합니다. 대체 매핑을 제거하려면 pszTrueTypeFontName에 지정된 TrueType 글꼴 이름과 pszDevFontName에 지정된 NULL을 사용하여 이 메서드를 호출합니다.

유효한 디바이스 글꼴 목록을 가져오려면 현재 프린터에 대한 정보 컨텍스트를 만들고 SetGraphicsMode(hIC, GM_ADVANCED)를 호출합니다. 그런 다음 EnumFontFamilies를 호출하여 디바이스 글꼴을 열거합니다. EnumFontFamilies의 콜백 매개 변수(Microsoft Windows SDK 설명서의 EnumFontFamProc 참조)는 비트 AND 결과(FontType & TRUETYPE_FONTTYPE)가 0이 아닌 각 글꼴에 대한 카운터를 증가시켜 디바이스 글꼴을 필터링해야 합니다. SetGraphicsMode, EnumFontFamiliesEnumFontFamProc 함수는 Windows SDK 설명서에 설명되어 있습니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 prcomoem.h(Prcomoem.h 포함)

추가 정보

IPrintCoreHelperPS

IPrintCoreHelperPS::GetFontSubstitution