IXpsOMObjectFactory::CreatePageReference 메서드(xpsobjectmodel.h)
페이지의 가상화를 가능하게 하는 IXpsOMPageReference 인터페이스를 만듭니다.
구문
HRESULT CreatePageReference(
[in] const XPS_SIZE *advisoryPageDimensions,
[out, retval] IXpsOMPageReference **pageReference
);
매개 변수
[in] advisoryPageDimensions
권고 페이지 차원(페이지 너비 및 페이지 높이)을 설정하는 XPS_SIZE 구조체입니다.
크기는 XPS 단위로 설명됩니다. 인치당 96개의 XPS 단위가 있습니다. 예를 들어 8.5"x 11.0" 페이지의 크기는 816 x 1,056 XPS 단위입니다.
[out, retval] pageReference
새 IXpsOMPageReference 인터페이스에 대한 포인터입니다.
반환 값
이 메서드는 HRESULT를 반환합니다. 가능한 값은 다음 표에 있는 값을 포함하지만 이에 국한되지 않습니다. 이 표에 나열되지 않은 XPS 문서 API 반환 값에 대한 자세한 내용은 XPS 문서 오류를 참조하세요.
반환 코드 | Description |
---|---|
|
메서드가 성공했습니다. |
|
advisoryPageDimensions 또는 pageReference 가 NULL입니다. |
|
advisoryPageDimensions 에는 잘못된 페이지 크기 또는 잘못된 페이지 크기 값이 포함되어 있습니다. |
설명
페이지 참조를 사용하면 로드가 명시적으로 요청될 때까지 페이지의 전체 개체 모델 로드를 지연할 수 있습니다. 페이지가 변경되지 않은 경우 요청에 따라 언로드할 수 있습니다.
다음 코드 예제에서는 이 메서드를 사용하여 새 인터페이스를 만드는 방법을 보여 줍니다.
IXpsOMPageReference *newInterface;
// The following value is defined outside of
// this example.
XPS_SIZE advisoryPageDimensions;
// Note the implicit requirement that CoInitializeEx
// has previously been called from this thread.
hr = CoCreateInstance(
__uuidof(XpsOMObjectFactory),
NULL,
CLSCTX_INPROC_SERVER,
_uuidof(IXpsOMObjectFactory),
reinterpret_cast<LPVOID*>(&xpsFactory)
);
if (SUCCEEDED(hr))
{
hr = xpsFactory->CreatePageReference (
&advisoryPageDimensions,
&newInterface);
if (SUCCEEDED(hr))
{
// use newInterface
newInterface->Release();
}
xpsFactory->Release();
}
else
{
// evaluate HRESULT error returned in hr
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7, Windows Vista SP2 및 Windows Vista용 플랫폼 업데이트가 포함된 Windows Vista [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 R2, Windows Server 2008 SP2 및 Windows Server 2008용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | xpsobjectmodel.h |