Bagikan melalui


IXpsOMObjectFactory::CreatePackageWriterOnFile method (xpsobjectmodel.h)

Membuka file untuk menulis konten XPS OM ke paket XPS.

Sintaks

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

Nama file yang akan dibuat.

[in] securityAttributes

Struktur SECURITY_ATTRIBUTES , yang berisi dua anggota terpisah tetapi terkait:

  • lpSecurityDescriptor: deskriptor keamanan opsional
  • bInheritHandle: nilai Boolean yang menentukan apakah handel yang dikembalikan dapat diwariskan oleh proses anak
Jika lpSecurityDescriptor adalah NULL, file atau perangkat yang terkait dengan handel yang dikembalikan diberi deskriptor keamanan default.

Untuk informasi selengkapnya tentang securityAttributes, lihat CreateFile.

[in] flagsAndAttributes

Menentukan pengaturan dan atribut file yang akan dibuat. Untuk sebagian besar file, nilai FILE_ATTRIBUTE_NORMAL dapat digunakan.

Lihat CreateFile untuk informasi selengkapnya tentang parameter ini.

[in] optimizeMarkupSize

Nilai Boolean yang menunjukkan apakah markup dokumen akan dioptimalkan untuk ukuran ketika konten XPS OM ditulis ke paket XPS.

Nilai Makna
BENAR
Penulis paket akan mencoba mengoptimalkan markup untuk ukuran minimum.
SALAH
Penulis paket tidak akan mencoba melakukan pengoptimalan apa pun.

[in] interleaving

Menentukan apakah konten XPS OM akan diselingi ketika ditulis ke file.

[in] documentSequencePartName

Antarmuka IOpcPartUri yang berisi nama bagian urutan dokumen dalam file baru.

[in] coreProperties

Antarmuka IXpsOMCoreProperties yang berisi properti dokumen inti yang akan diberikan ke file baru. Parameter ini dapat diatur ke NULL.

[in] packageThumbnail

Antarmuka IXpsOMImageResource yang berisi gambar mini yang akan ditetapkan ke file baru. Parameter ini dapat diatur ke NULL.

[in] documentSequencePrintTicket

Antarmuka IXpsOMPrintTicketResource yang berisi tiket cetak tingkat paket yang akan ditetapkan ke file baru. Parameter ini dapat diatur ke NULL.

[in] discardControlPartName

Antarmuka IOpcPartUri yang berisi nama bagian kontrol buang. Parameter ini dapat diatur ke NULL.

[out, retval] packageWriter

Penunjuk ke antarmuka IXpsOMPackageWriter baru yang dibuat oleh metode ini.

Nilai kembali

Metode mengembalikan HRESULT. Nilai yang mungkin termasuk, tetapi tidak terbatas pada, yang ada dalam tabel berikut. Untuk informasi tentang nilai pengembalian API dokumen XPS yang tidak tercantum dalam tabel ini, lihat Kesalahan Dokumen XPS.

Menampilkan kode Deskripsi
S_OK
Metode berhasil.
E_POINTER
filename, documentSequencePartName, atau packageWriter adalah NULL.
XPS_E_NO_CUSTOM_OBJECTS
coreProperties, documentSequencePrintTicket, atau packageThumbnail tidak menunjuk ke implementasi antarmuka yang dikenali. Implementasi kustom antarmuka XPS Document API tidak didukung.
 

Metode ini memanggil PACKAGING API. Untuk informasi tentang nilai pengembalian PACKAGING API, lihat Kesalahan Pengemasan.

Keterangan

File dibuka dan diinisialisasi dan antarmuka IXpsOMPackageWriter yang dikembalikan kemudian digunakan untuk menulis jenis konten, hubungan paket, properti inti, sumber daya urutan dokumen, dan hubungan urutan dokumen.

Jika documentSequencePrintTicket diatur ke NULL dan nilai interleavingXPS_INTERLEAVING_ON, metode ini membuat tiket cetak tingkat pekerjaan kosong dan menambahkan hubungan ke tiket cetak kosong. Hal ini dilakukan untuk memberikan konsumsi streaming paket yang lebih efisien.

Jika documentSequencePrintTicket diatur ke NULL dan nilai interleavingXPS_INTERLEAVING_OFF, tidak ada tiket cetak kosong yang dibuat.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 7, Windows Vista dengan SP2 dan Pembaruan Platform untuk Windows Vista [aplikasi desktop | Aplikasi UWP]
Server minimum yang didukung Windows Server 2008 R2, Windows Server 2008 dengan SP2 dan Pembaruan Platform untuk Windows Server 2008 [aplikasi desktop | Aplikasi UWP]
Target Platform Windows
Header xpsobjectmodel.h

Lihat juga

CreateFile

IXpsOMCoreProperties

IXpsOMImageResource

IXpsOMObjectFactory

IXpsOMPackageWriter

IXpsOMPrintTicketResource

Kesalahan Pengemasan

SECURITY_ATTRIBUTES

Spesifikasi Kertas XML

Kesalahan Dokumen XPS