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


Метод IXpsOMObjectFactory::CreatePackageFromFile (xpsobjectmodel.h)

Открывает файл пакета XPS и возвращает дерево объектов документа XPS с экземпляром.

Синтаксис

HRESULT CreatePackageFromFile(
  [in]          LPCWSTR       filename,
  [in]          BOOL          reuseObjects,
  [out, retval] IXpsOMPackage **package
);

Параметры

[in] filename

Имя файла пакета XPS.

[in] reuseObjects

Логическое значение, указывающее, пытается ли программное обеспечение оптимизировать дерево объектов документа путем предоставления общего доступа к объектам, идентичным во всех свойствах и дочерних элементах.

Значение Значение
ИСТИННЫЙ
Программа попытается оптимизировать дерево объектов.
ЛОЖНЫХ
Программное обеспечение не будет пытаться оптимизировать дерево объектов.

[out, retval] package

Указатель на новый интерфейс IXpsOMPackage , содержащий результирующее дерево объектов документа XPS.

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

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

Код возврата Описание
S_OK
Метод выполнен успешно.
E_POINTER
filename или package имеет значение NULL.
 

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

Комментарии

Этот метод не проверяет содержимое потоковых ресурсов, которые загружаются из потока в объекты XPS OM. Вместо этого приложение должно проверить эти ресурсы, прежде чем использовать их.

Этот метод не десериализует страницы документа; он десериализует только пакет XPS до ссылочных частей страницы. Фактические страницы можно десериализовать по мере необходимости, вызвав метод IXpsOMPageReference::GetPage . Поскольку страницы не десериализируются при вызове GetPage , этот метод может возвращать S_OK или, если предпринята попытка загрузить проблемную страницу в пакет XPS, возвращать ошибку.

Если вы напишете OM XPS сразу после прочтения пакета XPS, часть исходного содержимого может быть потеряна или изменена.

Некоторые изменения, которые могут произойти в таком случае, перечислены в следующей таблице:

Функция документа Действие
Цифровые подписи Удалено из документа
Часть DiscardControl Удалено из документа
Внешние части документа Удалено из документа
Разметка FixedPage Изменено с исходного
Разметка словаря ресурсов Изменено с исходного, если установлен флаг оптимизации
 

Сведения об использовании интерфейса IXpsOMPackage в программе см. в статье Создание пустой модели XPS.

Требования

Требование Значение
Минимальная версия клиента 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

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

Создание пустой модели XPS

IXpsOMObjectFactory

IXpsOMPackage

IXpsOMPageReference::GetPage

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

XPS

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