IXpsOMObjectFactory::CreatePackageFromStream-Methode (xpsobjectmodel.h)
Öffnet einen Stream, der ein XPS-Paket enthält, und gibt eine instanziierte XPS-Dokumentobjektstruktur zurück.
Syntax
HRESULT CreatePackageFromStream(
[in] IStream *stream,
[in] BOOL reuseObjects,
[out, retval] IXpsOMPackage **package
);
Parameter
[in] stream
Der Stream, der ein XPS-Paket enthält.
[in] reuseObjects
Der boolesche Wert, der angibt, dass die Software versucht, die Dokumentobjektstruktur zu optimieren, indem Objekte freigegeben werden, die in allen Eigenschaften und untergeordneten Elementen identisch sind.
Wert | Bedeutung |
---|---|
|
Die Software versucht, die Objektstruktur zu optimieren. |
|
Die Software versucht nicht, die Objektstruktur zu optimieren. |
[out, retval] package
Ein Zeiger auf die neue IXpsOMPackage-Schnittstelle , die die resultierende XPS-Dokumentobjektstruktur enthält.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliche Werte sind unter anderem die Werte in der folgenden Tabelle. Informationen zu XPS-Dokument-API-Rückgabewerten, die in dieser Tabelle nicht aufgeführt sind, finden Sie unter XPS-Dokumentfehler.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
stream oder package ist NULL. |
Diese Methode ruft die Packaging-API auf. Informationen zu den Rückgabewerten der Verpackungs-API finden Sie unter Paketfehler.
Hinweise
Diese Methode überprüft nicht den Inhalt streambasierter Ressourcen, die aus dem Stream in die Objekte des XPS OM geladen werden. Stattdessen muss die Anwendung diese Ressourcen überprüfen, bevor sie sie verwendet.
Diese Methode deserialisiert die Dokumentseiten nicht. Das XPS-Paket wird nur bis zu den Seitenverweisteilen deserialisiert. Die tatsächlichen Seiten können nach Bedarf deserialisiert werden, indem die IXpsOMPageReference::GetPage-Methode aufgerufen wird. Da die Seiten beim Aufruf von GetPage nicht deserialisiert werden, kann diese Methode S_OK zurückgeben oder, wenn versucht wird, eine problematische Seite in einem XPS-Paket zu laden, einen Fehler zurückgibt.
Wenn Sie ein XPS OM direkt nach dem Lesen eines XPS-Pakets schreiben, kann ein Teil des ursprünglichen Inhalts verloren gehen oder geändert werden.
Einige der Änderungen, die in einem solchen Fall auftreten können, sind in der folgenden Tabelle aufgeführt:
Dokumentfeature | Aktion |
---|---|
Digitale Signaturen | Aus Dokument entfernt |
DiscardControl-Teil | Aus Dokument entfernt |
Fremddokumentteile | Aus Dokument entfernt |
FixedPage-Markup | Vom Original geändert |
Ressourcenwörterbuchmarkup | Vom Original geändert, wenn das Optimierungsflag festgelegt ist |
Informationen zur Verwendung der IXpsOMPackage-Schnittstelle in einem Programm finden Sie unter Erstellen eines leeren XPS-OM.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform | Windows |
Kopfzeile | xpsobjectmodel.h |