C# Konversi XPS ke PDF | Konversi OXPS ke PDF di C#

XPS (Spesifikasi Kertas XML Terbuka) dan OXPS (OpenXPS) mewakili dokumen halaman tetap. Dokumen XPS mirip dengan dokumen PDF karena keduanya mempertahankan tata letak dan format dokumen asli. Namun, dokumen XPS tidak didukung secara luas seperti dokumen PDF. Dokumen PDF (Portable Document Format) didukung secara luas di berbagai platform dan perangkat. Pada artikel ini, kami akan menunjukkan cara mengonversi XPS atau OXPS ke PDF di C#.

Artikel ini mencakup topik-topik berikut:

  1. C# API untuk Mengonversi XPS ke PDF
  2. Konversi XPS ke PDF menggunakan C#
  3. Konversi Halaman Tertentu XPS ke PDF
  4. Konverter OXPS ke PDF dalam C#
  5. Konversi Halaman Tertentu OXPS ke PDF
  6. Konversi File XPS ke PDF Online
  7. XPS ke PDF - Sumber Belajar Gratis

C# API untuk Mengonversi XPS ke PDF

Kami akan menggunakan API Aspose.Page for .NET untuk mengonversi dokumen XPS atau OXPS ke format PDF. Ini adalah API canggih yang memungkinkan pengembang membuat, mengedit, memanipulasi, dan mengonversi dokumen XPS dan EPS/PS. Aspose.Page for .NET adalah API yang andal dan mandiri yang mudah digunakan dan diintegrasikan ke dalam aplikasi .NET Anda.

Silakan unduh DLL API atau instal menggunakan perintah NuGet berikut:

PM> Install-Package Aspose.Page

Konversi XPS ke PDF menggunakan C#

Kita dapat mengonversi seluruh dokumen XPS ke format PDF dengan mengikuti langkah-langkah di bawah ini:

  1. Muat file XPS masukan.
  2. Inisialisasi objek opsi dengan parameter yang diperlukan.
  3. Buat sebuah instance dari PdfDevice untuk rendering.
  4. Ekspor XPS ke dokumen PDF.

Contoh kode yang diberikan di bawah ini menunjukkan cara mengonversi file XPS ke PDF menggunakan C#.

// Inisialisasi aliran keluaran PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inisialisasi aliran input XPS
//menggunakan (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open))
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.xps", System.IO.FileMode.Open))
{
// Muat dokumen XPS dari aliran
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// atau memuat dokumen XPS langsung dari file. Tidak diperlukan xpsStream.
// Dokumen XpsDocument = XpsDocument baru (inputFileName, XpsLoadOptions baru ());

// Inisialisasi objek opsi dengan parameter yang diperlukan.
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
    JpegQualityLevel = 100,
    ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
    TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
};
// Buat perangkat rendering untuk format PDF
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

Konversi Halaman Tertentu XPS ke PDF di C#

Kami juga dapat mengonversi halaman tertentu dari dokumen XPS ke format PDF dengan mengikuti langkah-langkah di bawah ini:

  1. Inisialisasi aliran input XPS.
  2. Muat dokumen XPS dari aliran.
  3. Inisialisasi objek PdfSaveOptions.
  4. Tentukan nomor halaman untuk konversi.
  5. Simpan dokumen sebagai file PDF.

Contoh kode berikut menunjukkan cara mengonversi halaman tertentu XPS ke PDF di C#.

// Inisialisasi aliran keluaran PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inisialisasi aliran input XPS
//menggunakan (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open))
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.xps", System.IO.FileMode.Open))
{
    // Muat dokumen XPS dari aliran
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // atau memuat dokumen XPS langsung dari file. Tidak diperlukan xpsStream.
    // Dokumen XpsDocument = XpsDocument baru (inputFileName, XpsLoadOptions baru ());

    // Inisialisasi objek opsi dengan parameter yang diperlukan.
    Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
    {
        JpegQualityLevel = 100,
        ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
        TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
        PageNumbers = new int[] {1, 3}
    };
    // Buat perangkat rendering untuk format PDF
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

Cuplikan kode ini menggunakan dokumen XPS yang berisi beberapa halaman sebagai file masukan. Padahal, hanya halaman nomor 1 dan 3 yang dikonversi ke PDF seperti yang ditentukan dalam cuplikan kode. Tangkapan layar berikut menampilkan dua halaman yang dirender sebagai dokumen PDF:

XPS ke PDF

Konverter OXPS ke PDF dalam C#

Format OXPS adalah bentuk format file XPS yang diperbarui dan canggih. Namun, file tersebut tidak didukung oleh beberapa sistem operasi lama. Kita dapat dengan mudah mengkonversi dokumen OXPS ke format PDF dengan mengikuti langkah-langkah di bawah ini:

  1. Inisialisasi aliran input OXPS.
  2. Muat file OXPS dari aliran.
  3. Buat instance objek kelas PdfSaveOptions
  4. Ekspor OXPS ke file PDF

Contoh kode berikut menunjukkan cara mengonversi OXPS ke PDF di C#.

// Inisialisasi aliran keluaran PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inisialisasi aliran input OXPS
//menggunakan (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.oxps", System.IO.FileMode.Open))
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.oxps", System.IO.FileMode.Open))
{
// Muat dokumen OXPS dari aliran
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// atau memuat dokumen OXPS langsung dari file. Tidak diperlukan xpsStream.
// Dokumen XpsDocument = XpsDocument baru (inputFileName, XpsLoadOptions baru ());

// Inisialisasi objek opsi dengan parameter yang diperlukan.
Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
{
    JpegQualityLevel = 100,
    ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
    TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
};
// Buat perangkat rendering untuk format PDF
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

Konversi Halaman Tertentu OXPS ke PDF di C#

Demikian pula, kami juga dapat mengonversi halaman tertentu dari dokumen OXPS ke format PDF dengan mengikuti langkah-langkah di bawah ini:

  1. Muat file OXPS
  2. Deklarasikan objek PdfSaveOptions.
  3. Tetapkan nomor halaman yang ingin Anda konversi.
  4. Render OXPS ke PDF.

Cuplikan kode berikut menunjukkan cara mengonversi halaman tertentu OXPS ke PDF di C#. Ini mengkonversi halaman pertama file OXPS ke PDF, seperti yang disebutkan dalam cuplikan kode.

// Inisialisasi aliran keluaran PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inisialisasi aliran input OXPS
//menggunakan (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.oxps", System.IO.FileMode.Open))
using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "sample.oxps", System.IO.FileMode.Open))
{
    // Muat dokumen OXPS dari aliran
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // atau memuat dokumen XPS langsung dari file. Tidak diperlukan xpsStream.
    // Dokumen XpsDocument = XpsDocument baru (inputFileName, XpsLoadOptions baru ());

    // Inisialisasi objek opsi dengan parameter yang diperlukan.
    Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions options = new Aspose.Page.XPS.Presentation.Pdf.PdfSaveOptions()
    {
        JpegQualityLevel = 100,
        ImageCompression = Aspose.Page.XPS.Presentation.Pdf.PdfImageCompression.Jpeg,
        TextCompression = Aspose.Page.XPS.Presentation.Pdf.PdfTextCompression.Flate,
        PageNumbers = new int[] {1}
    };
    // Buat perangkat rendering untuk format PDF
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

Dapatkan Lisensi Gratis

Anda bisa mendapatkan lisensi sementara gratis untuk menguji perpustakaan tanpa batasan evaluasi apa pun.

Konversikan File XPS ke PDF Daring

Anda juga dapat mengonversi file XPS ke PDF online menggunakan aplikasi pengonversi XPS ke PDF gratis ini tanpa menginstal perangkat lunak atau plugin apa pun.

Konversi Dokumen XPS ke PDF - Sumber Belajar

Selain mengonversi dokumen XPS atau OXPS ke format PDF, pelajari lebih lanjut tentang perpustakaan dan jelajahi berbagai fitur lainnya menggunakan sumber daya di bawah ini:

Kesimpulan

Pada artikel ini, kita telah mempelajari cara mengonversi XPS ke PDF dan OXPS ke PDF secara terprogram menggunakan C#. Kami juga telah melihat cara mengekspor halaman tertentu dari dokumen XPS atau OXPS ke dalam format PDF. Anda dapat menjelajahi API lebih jauh dan mengoptimalkan alur kerja penanganan dokumen Anda. Jika ada ambiguitas, jangan ragu untuk menghubungi kami di [forum dukungan gratis] kami 17.

Lihat juga