IPrintPreviewPageCollection::Paginate method

This method is called whenever the system detects that the physical dimensions of the page has changed or when the app has requested pagination via a call to IPrintPreviewDxgiPreviewTarget::InvalidatePreview.


HRESULT Paginate(
  [in]  UINT32 currentJobPage,
  [in]  IInspectable *printTaskOptions


  • currentJobPage [in]
    The current page being displayed to the user.

  • printTaskOptions [in]
    The print options.

Return value

If the Paginate method completes successfully, it returns an S_OK. Otherwise it returns an appropriate HRESULT error code.


For standard options which result in changes to the physical layout of the page, the system will automatically generate a Paginate call. The app does not need to call IPrintPreviewDxgiPackageTarget::InvalidatePreview in these scenarios; e.g. portrait changed to landscape. For custom options such as handling greyscale and color, apps should call InvalidatePreview to trigger a pagination.

Note  A Pagination request does not have to require a new pagination to occur.

Apps should examine the state of the provided printTaskOptions and determine if the changes warrant a repagination. For example, if the imageable area changes and the content already fits within the new imageable area there is no need to perform a new pagination.

An app may use the currentJobPage parameter to determine what page is visible if it wants to maintain user context when the layout changes. For example, keeping the same content on the screen when orientation switches from portrait to landscape.


Minimum supported client

Windows 8 [Windows Store apps only]

Minimum supported server

Windows Server 2012 [Windows Store apps only]



See also




Send comments about this topic to Microsoft

Build date: 10/12/2013