Share via


Método IXpsOMObjectFactory::CreatePackageFromStream (xpsobjectmodel.h)

Abre una secuencia que contiene un paquete XPS y devuelve un árbol de objetos de documento XPS creado por instancias.

Sintaxis

HRESULT CreatePackageFromStream(
  [in]          IStream       *stream,
  [in]          BOOL          reuseObjects,
  [out, retval] IXpsOMPackage **package
);

Parámetros

[in] stream

Secuencia que contiene un paquete XPS.

[in] reuseObjects

Valor booleano que indica que el software intenta optimizar el árbol de objetos de documento compartiendo objetos idénticos en todas las propiedades y elementos secundarios.

Valor Significado
VERDAD
El software intentará optimizar el árbol de objetos.
FALSO
El software no intentará optimizar el árbol de objetos.

[out, retval] package

Puntero a la nueva interfaz IXpsOMPackage que contiene el árbol de objetos de documento XPS resultante.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen, entre otros, los de la tabla siguiente. Para obtener información sobre los valores devueltos de la API de documentos XPS que no aparecen en esta tabla, vea Errores del documento XPS.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
E_POINTER
stream o package es NULL.
 

Este método llama a la API de empaquetado . Para obtener información sobre los valores devueltos de la API de empaquetado, consulte Errores de empaquetado.

Comentarios

Este método no valida el contenido de ningún recurso basado en secuencias que cargue desde la secuencia en los objetos del OM XPS. En su lugar, la aplicación debe validar estos recursos antes de usarlos.

Este método no deserializa las páginas del documento; solo deserializa el paquete XPS hasta las partes de referencia de la página. Las páginas reales se pueden deserializar según sea necesario llamando al método IXpsOMPageReference::GetPage . Dado que las páginas no se deserializan cuando se llama a GetPage , es posible que este método devuelva S_OK o, si se intenta cargar una página problemática en un paquete XPS, para devolver un error.

Si escribe un XPS OM inmediatamente después de haber leído un paquete XPS en él, es posible que se pierda o cambie parte del contenido original.

Algunos de los cambios que pueden producirse en tal caso se enumeran en la tabla siguiente:

Característica de documento Acción
Firmas digitales Se ha quitado del documento
Elemento DiscardControl Se ha quitado del documento
Elementos de documento externos Se ha quitado del documento
Marcado FixedPage Modificado a partir del original
Marcado de diccionario de recursos Se ha modificado a partir del original si se establece la marca de optimización
 

Para obtener información sobre el uso de la interfaz IXpsOMPackage en un programa, vea Crear un OM XPS en blanco.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7, Windows Vista con SP2 y Platform Update para Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado xpsobjectmodel.h

Consulte también

Crear un OM XPS en blanco

IXpsOMObjectFactory

IXpsOMPackage

Errores de empaquetado

XML Paper Specification

Errores del documento XPS