IXpsOMObjectFactory::CreatePackageWriterOnFile-Methode (xpsobjectmodel.h)
Öffnet eine Datei zum Schreiben des Inhalts eines XPS OM in ein XPS-Paket.
Syntax
HRESULT CreatePackageWriterOnFile(
[in] LPCWSTR fileName,
[in] LPSECURITY_ATTRIBUTES securityAttributes,
[in] DWORD flagsAndAttributes,
[in] BOOL optimizeMarkupSize,
[in] XPS_INTERLEAVING interleaving,
[in] IOpcPartUri *documentSequencePartName,
[in] IXpsOMCoreProperties *coreProperties,
[in] IXpsOMImageResource *packageThumbnail,
[in] IXpsOMPrintTicketResource *documentSequencePrintTicket,
[in] IOpcPartUri *discardControlPartName,
[out, retval] IXpsOMPackageWriter **packageWriter
);
Parameter
[in] fileName
Der Name der zu erstellenden Datei.
[in] securityAttributes
Die SECURITY_ATTRIBUTES-Struktur , die zwei separate, aber verwandte Elemente enthält:
- lpSecurityDescriptor: ein optionaler Sicherheitsdeskriptor
- bInheritHandle: ein boolescher Wert, der bestimmt, ob das zurückgegebene Handle von untergeordneten Prozessen geerbt werden kann
Weitere Informationen zu securityAttributes finden Sie unter CreateFile.
[in] flagsAndAttributes
Gibt die Einstellungen und Attribute der zu erstellenden Datei an. Für die meisten Dateien kann der FILE_ATTRIBUTE_NORMAL Wert verwendet werden.
Weitere Informationen zu diesem Parameter finden Sie unter CreateFile .
[in] optimizeMarkupSize
Ein boolescher Wert, der angibt, ob das Dokumentmarkup für die Größe optimiert wird, wenn der Inhalt des XPS OM in das XPS-Paket geschrieben wird.
Wert | Bedeutung |
---|---|
|
Der Paketschreiber versucht, das Markup für die Mindestgröße zu optimieren. |
|
Der Paketschreiber versucht nicht, eine Optimierung durchzuführen. |
[in] interleaving
Gibt an, ob der Inhalt des XPS-OM verschachtelt wird, wenn er in die Datei geschrieben wird.
[in] documentSequencePartName
Die IOpcPartUri-Schnittstelle , die den Teilenamen der Dokumentsequenz in der neuen Datei enthält.
[in] coreProperties
Die IXpsOMCoreProperties-Schnittstelle , die die wichtigsten Dokumenteigenschaften enthält, die der neuen Datei zugewiesen werden sollen. Dieser Parameter kann auf NULL festgelegt werden.
[in] packageThumbnail
Die IXpsOMImageResource-Schnittstelle , die das Miniaturbild enthält, das der neuen Datei zugewiesen werden soll. Dieser Parameter kann auf NULL festgelegt werden.
[in] documentSequencePrintTicket
Die IXpsOMPrintTicketResource-Schnittstelle , die das Druckticket auf Paketebene enthält, das der neuen Datei zugewiesen werden soll. Dieser Parameter kann auf NULL festgelegt werden.
[in] discardControlPartName
Die IOpcPartUri-Schnittstelle , die den Namen des Verwerfen-Steuerelementteils enthält. Dieser Parameter kann auf NULL festgelegt werden.
[out, retval] packageWriter
Ein Zeiger auf die neue IXpsOMPackageWriter-Schnittstelle , die von dieser Methode erstellt wurde.
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. |
|
filename, documentSequencePartName oder packageWriter ist NULL. |
|
coreProperties, documentSequencePrintTicket oder packageThumbnail verweist nicht auf eine erkannte Schnittstellenimplementierung. Die benutzerdefinierte Implementierung von XPS-Dokument-API-Schnittstellen wird nicht unterstützt. |
Diese Methode ruft die Packaging-API auf. Informationen zu den Rückgabewerten der Verpackungs-API finden Sie unter Paketfehler.
Hinweise
Die Datei wird geöffnet und initialisiert, und die zurückgegebene IXpsOMPackageWriter-Schnittstelle wird dann verwendet, um Inhaltstypen, Paketbeziehungen, Kerneigenschaften, Dokumentsequenzressourcen und Dokumentsequenzbeziehungen zu schreiben.
Wenn documentSequencePrintTicket auf NULL festgelegt ist und der Wert der VerschachtelungXPS_INTERLEAVING_ON ist, erstellt diese Methode ein leeres Druckticket auf Auftragsebene und fügt eine Beziehung zum leeren Druckticket hinzu. Dies geschieht, um eine effizientere Streamingnutzung des Pakets zu ermöglichen.
Wenn documentSequencePrintTicket auf NULL festgelegt ist und der Wert von InterleavingXPS_INTERLEAVING_OFF ist, wird kein leeres Druckticket erstellt.
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 |