Поделиться через


Метод IXpsOMPackageWriter::StartNewDocument (xpsobjectmodel.h)

Открывает и инициализирует новый объект FixedDocument в fixedDocumentSequence пакета.

Синтаксис

HRESULT StartNewDocument(
  [in] IOpcPartUri                            *documentPartName,
  [in] IXpsOMPrintTicketResource              *documentPrintTicket,
  [in] IXpsOMDocumentStructureResource        *documentStructure,
  [in] IXpsOMSignatureBlockResourceCollection *signatureBlockResources,
  [in] IXpsOMPartUriCollection                *restrictedFonts
);

Параметры

[in] documentPartName

Указатель на интерфейс IOpcPartUri , содержащий имя части нового документа.

[in] documentPrintTicket

Указатель на интерфейс IXpsOMPrintTicketResource , содержащий билет печати на уровне документа. Если для этого пакета нет билета на печать на уровне документа, для этого параметра можно задать значение NULL. См. также примечания.

[in] documentStructure

Указатель на интерфейс IXpsOMDocumentStructureResource , содержащий исходный ресурс структуры документа, если ресурс доступен; Если он недоступен, для этого параметра можно задать значение NULL.

[in] signatureBlockResources

Указатель на интерфейс IXpsOMSignatureBlockResourceCollection , содержащий коллекцию цифровых подписей, которые необходимо присоединить к документу. Если цифровые подписи для присоединения отсутствуют, для этого параметра можно задать значение NULL.

[in] restrictedFonts

Указатель на интерфейс IXpsOMPartUriCollection , содержащий шрифты, для которых должны быть записаны ограниченные связи шрифтов. Данные шрифта не записываются до вызова AddResource или Close .

Если документ не содержит шрифты с ограниченным доступом, для этого параметра можно задать значение NULL.

Возвращаемое значение

Метод возвращает HRESULT. Возможные значения включают, помимо прочего, значения в следующей таблице. Сведения о возвращаемых значениях API документов XPS, не перечисленных в этой таблице, см. в статье Ошибки документа XPS.

Код возврата Описание
S_OK
Метод выполнен успешно.
XPS_E_UNAVAILABLE_PACKAGE
Произошла серьезная ошибка, и содержимое XPS OM может быть неустранимо. Некоторые компоненты XPS OM могут по-прежнему использоваться, но только после проверки. Так как состояние модели XPS невозможно предсказать после возврата этой ошибки, все компоненты модели XPS должны быть освобождены и удалены.
XPS_E_UNEXPECTED_RESTRICTED_FONT_RELATIONSHIP
Коллекция ограниченных шрифтов, переданная в restrictedFonts , содержит неограниченный шрифт.
 

Этот метод вызывает API упаковки . Сведения о возвращаемых значениях API упаковки см. в разделе Ошибки упаковки.

Комментарии

Этот метод необходимо вызвать перед вызовом AddPage для записи содержимого интерфейса IXpsOMPage .

Сразу после создания экземпляра интерфейса IXpsOMPackageWriter пакет содержит только пустую часть фиксированной последовательности документов. При первом вызове этого метода часть FixedDocument добавляется в часть Фиксированной последовательности документов, а метод AddPage добавит страницы в эту часть FixedDocument. При каждом вызове этого метода после первого раза текущая часть FixedDocument закрывается, а новая часть FixedDocument открывается и добавляется в часть Фиксированной последовательности документов. Все последующие вызовы метода AddPage добавляют страницы в последнюю открытую часть FixedDocument. Этот интерфейс не поддерживает добавление страниц в закрытые части FixedDocument.

Если documentPrintTicket содержит указатель NULL и модуль записи пакетов был создан с чередованием, для XPS_INTERLEAVING_ON, этот метод создает пустой билет на печать уровня документа, если он еще не существует. При каждом вызове этого метода с указателем NULL в documentPrintTicket он добавляет связь из нового документа в пустой билет печати. Это делается для более эффективного использования пакета потоковой передачи.

Если documentPrintTicket содержит указатель NULL и модуль записи пакетов был создан с чередованием, для XPS_INTERLEAVING_OFF, пустой билет печати не создается.

Примечание При создании нового документа в пакете эскиз документа XPS не создается автоматически. Чтобы создать эскиз документа XPS, используйте интерфейс IXpsOMThumbnailGenerator .
 

Требования

Требование Значение
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header xpsobjectmodel.h

См. также раздел

IOpcPartUri

IXpsOMDocumentStructureResource

IXpsOMPackageWriter

IXpsOMPackageWriter3D

IXpsOMPrintTicketResource

IXpsOMSignatureBlockResourceCollection

Ошибки упаковки

Использование интерфейса IXpsOMPackageWriter

XPS

Ошибки документа XPS