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 securityAttributesfinden 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 Paket-Writer versucht nicht, eine Optimierung durchzuführen. |
[in] interleaving
Gibt an, ob der Inhalt des XPS-OM beim Schreiben in die Datei interleaviert wird.
[in] documentSequencePartName
Die IOpcPartUri Schnittstelle, die den Teilnamen der Dokumentsequenz in der neuen Datei enthält.
[in] coreProperties
Die IXpsOMCoreProperties Schnittstelle, die die grundlegenden 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 umfassen, aber nicht beschränkt auf diejenigen in der folgenden Tabelle. Informationen zu XPS-Dokument-API-Rückgabewerten, die nicht in dieser Tabelle aufgeführt sind, finden Sie unter XPS-Dokumentfehler.
Rückgabecode | Beschreibung |
---|---|
|
Die Methode war erfolgreich. |
|
Dateinamen, documentSequencePartNameoder packageWriter ist NULL. |
|
coreProperties, documentSequencePrintTicketoder 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 Packaging Errors.
Bemerkungen
Die Datei wird geöffnet und initialisiert, und die IXpsOMPackageWriter Schnittstelle, die zurückgegeben wird, wird dann verwendet, um Inhaltstypen, Paketbeziehungen, Kerneigenschaften, Dokumentsequenzressourcen und Dokumentsequenzbeziehungen zu schreiben.
Wenn documentSequencePrintTicket auf NULL- festgelegt ist und der Wert der interleavingXPS_INTERLEAVING_ONist, erstellt diese Methode ein leeres Druckticket auf Auftragsebene und fügt dem leeren Druckticket eine Beziehung hinzu. Dies geschieht, um einen effizienteren Streaming-Verbrauch des Pakets zu ermöglichen.
Wenn documentSequencePrintTicket auf NULL- festgelegt ist und der Wert der interleavingXPS_INTERLEAVING_OFFist, wird kein leeres Druckticket erstellt.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 7, Windows Vista mit SP2 und Plattformupdate für Windows Vista [Desktop-Apps | UWP-Apps] |
mindestens unterstützte Server- | Windows Server 2008 R2, Windows Server 2008 mit SP2 und Plattformupdate für Windows Server 2008 [Desktop-Apps | UWP-Apps] |
Zielplattform- | Fenster |
Header- | xpsobjectmodel.h |