C# Převod XPS do PDF | Převést OXPS do PDF v C#

XPS (Open XML Paper Specification) a OXPS (OpenXPS) představují dokumenty s pevnými stránkami. Dokumenty XPS jsou podobné dokumentům PDF v tom, že zachovávají rozložení a formátování původního dokumentu. Dokumenty XPS však nejsou tak široce podporovány jako dokumenty PDF. Dokumenty PDF (Portable Document Format) jsou široce podporovány na různých platformách a zařízeních. V tomto článku vám ukážeme, jak převést XPS nebo OXPS do PDF v C#.

Tento článek se zabývá následujícími tématy:

  1. C# API pro převod XPS do PDF
  2. Převést XPS do PDF pomocí C#
  3. Převést konkrétní stránky XPS do PDF
  4. Převodník OXPS do PDF v C#
  5. Převést konkrétní stránky OXPS do PDF
  6. Převést soubor XPS do PDF online
  7. XPS to PDF – bezplatné výukové zdroje

C# API pro převod XPS do PDF

K převodu dokumentu XPS nebo OXPS do formátu PDF použijeme API Aspose.Page for .NET. Jedná se o výkonné API, které umožňuje vývojářům vytvářet, upravovat, manipulovat a převádět dokumenty XPS a EPS/PS. Aspose.Page for .NET je spolehlivé a samostatné API, které se snadno používá a integruje do vašich aplikací .NET.

Prosím stáhněte si DLL API nebo ji nainstalujte pomocí následujícího příkazu NuGet:

PM> Install-Package Aspose.Page

Převést XPS do PDF pomocí C#

Celý dokument XPS můžeme převést do formátu PDF podle následujících kroků:

  1. Načtěte vstupní soubor XPS.
  2. Inicializujte objekt options s potřebnými parametry.
  3. Vytvořte instanci PdfDevice pro vykreslení.
  4. Export XPS do dokumentu PDF.

Ukázka kódu uvedená níže ukazuje, jak převést soubor XPS na PDF pomocí C#.

// Inicializujte výstupní proud PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inicializujte vstupní proud XPS
//pomocí (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))
{
// Načtěte dokument XPS ze streamu
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// nebo načíst dokument XPS přímo ze souboru. Pak není potřeba žádný xpsStream.
// Dokument XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

// Inicializujte objekt options s potřebnými parametry.
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,
};
// Vytvořte vykreslovací zařízení pro formát PDF
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

Převést konkrétní stránky XPS do PDF v C#

Můžeme také převést vybrané stránky dokumentu XPS do formátu PDF podle následujících kroků:

  1. Inicializujte vstupní proud XPS.
  2. Načtěte dokument XPS ze streamu.
  3. Inicializujte objekt PdfSaveOptions.
  4. Zadejte čísla stránek pro převod.
  5. Uložte dokument jako soubor PDF.

Následující ukázka kódu ukazuje, jak převést konkrétní stránky XPS do PDF v C#.

// Inicializujte výstupní proud PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "XPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inicializujte vstupní proud XPS
//pomocí (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))
{
    // Načtěte dokument XPS ze streamu
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // nebo načíst dokument XPS přímo ze souboru. Pak není potřeba žádný xpsStream.
    // XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Inicializujte objekt voleb s potřebnými parametry.
    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}
    };
    // Vytvořte vykreslovací zařízení pro formát PDF
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

Tento fragment kódu používá jako vstupní soubor dokument XPS obsahující několik stránek. Zatímco pouze čísla stránek 1 a 3 jsou převedeny do PDF, jak je uvedeno ve fragmentu kódu. Následující snímek obrazovky zobrazuje dvě stránky vykreslené jako dokument PDF:

XPS do PDF

Převaděč OXPS do PDF v C#

Formát OXPS je aktualizovaná a pokročilá forma formátu souboru XPS. Některé staré operační systémy však takové soubory nepodporují. Dokument OXPS můžeme snadno převést do formátu PDF podle následujících kroků:

  1. Inicializujte vstupní proud OXPS.
  2. Načtěte soubor OXPS ze streamu.
  3. Vytvořte instanci objektu třídy PdfSaveOptions
  4. Export OXPS do souboru PDF

Následující ukázka kódu ukazuje, jak převést OXPS do PDF v C#.

// Inicializujte výstupní proud PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inicializujte vstupní proud OXPS
//pomocí (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))
{
// Načtěte dokument OXPS ze streamu
Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
// nebo načíst dokument OXPS přímo ze souboru. Pak není potřeba žádný xpsStream.
// Dokument XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

// Inicializujte objekt options s potřebnými parametry.
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,
};
// Vytvořte vykreslovací zařízení pro formát PDF
Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

document.Save(device, options);
}

Převést konkrétní stránky OXPS do PDF v C#

Podobně můžeme také převést konkrétní stránky z dokumentu OXPS do formátu PDF podle následujících kroků:

  1. Načtěte soubor OXPS
  2. Deklarujte objekt PdfSaveOptions.
  3. Nastavte čísla stránek, které chcete převést.
  4. Vykreslit OXPS do PDF.

Následující fragment kódu ukazuje, jak převést konkrétní stránky OXPS do PDF v C#. Převede první stránku souboru OXPS do formátu PDF, jak je uvedeno ve fragmentu kódu.

// Inicializujte výstupní proud PDF
using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "OXPStoPDF.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
// Inicializujte vstupní proud OXPS
//pomocí (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))
{
    // Načtěte dokument OXPS ze streamu
    Aspose.Page.XPS.XpsDocument document = new Aspose.Page.XPS.XpsDocument(xpsStream, new Aspose.Page.XPS.XpsLoadOptions());
    // nebo načíst dokument XPS přímo ze souboru. Pak není potřeba žádný xpsStream.
    // Dokument XpsDocument = new XpsDocument(inputFileName, new XpsLoadOptions());

    // Inicializujte objekt options s potřebnými parametry.
    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}
    };
    // Vytvořte vykreslovací zařízení pro formát PDF
    Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

    document.Save(device, options);
}

Získejte bezplatnou licenci

Můžete získat bezplatnou dočasnou licenci k testování knihovny bez jakýchkoli omezení hodnocení.

Převod XPS souboru do PDF online

Můžete také převést soubor XPS do formátu PDF online pomocí této aplikace bezplatný převodník XPS na PDF bez instalace jakéhokoli softwaru nebo pluginu.

Převést dokument XPS do formátu PDF – výukové zdroje

Kromě převodu dokumentů XPS nebo OXPS do formátu PDF se můžete dozvědět více o knihovně a prozkoumat různé další funkce pomocí zdrojů níže:

Závěr

V tomto článku jsme se naučili, jak programově převést XPS do PDF a OXPS do PDF pomocí C#. Také jsme viděli, jak exportovat konkrétní stránky dokumentu XPS nebo OXPS do formátu PDF. Můžete dále prozkoumat API a optimalizovat svůj pracovní postup při manipulaci s dokumenty. V případě jakýchkoliv nejasností nás prosím neváhejte kontaktovat na našem bezplatném fóru podpory.

Viz také