Scal dokumenty XPS z XPS i PDF

.NET API do łączenia kilku plików XPS

 

XPS może przechowywać wiele dokumentów w jednym pliku, a dokumenty XPS mogą zawierać wiele stron. Funkcjonalność łączenia oferowana przez rozwiązanie Aspose.Page API została opracowana tak, aby można było połączyć kilka plików w jeden. W rezultacie otrzymasz plik XPS lub PDF, który zawiera zawartość wszystkich scalonych plików. Tutaj znajdziesz przykład kodu, jak połączyć XPS z C# .NET. Aby zobaczyć, jak można wdrożyć taką funkcjonalność w rozwiązaniu internetowym lub scalić pliki online, wypróbuj XPS Merger .

Aby scalić pliki XPS, potrzebujemy:

  • Aspose.Page dla .NET API, który jest bogatym w funkcje, wydajnym i łatwym w użyciu interfejsem API do manipulacji i konwersji dokumentów dla platformy C#.

  • Otwórz Menedżera pakietów NuGet, wyszukaj Aspose.Page i zainstaluj. Możesz również użyć następującego polecenia z konsoli Menedżera pakietów.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Kroki scalania kilku plików XPS w jeden za pomocą C# .NET.

  1. Ustaw ścieżkę do katalogu dokumentów.
  2. Zainicjuj strumień wyjściowy XPS.
  3. Zainicjuj strumień wejściowy pliku XPS.
  4. Załaduj dokument XPS ze strumienia XpsDocument Class lub załaduj go bezpośrednio z pliku. W takim przypadku nie potrzebujesz xpsStream.
  5. Utwórz tablicę plików XPS, które zostaną połączone z pierwszym.
  6. Scal pliki XPS, aby wyprowadzić dokument XPS.

Kod C# do łączenia XPS z XPS

    using Aspose.Page.XPS;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithDocumentMerging();
    // Initialize XPS output stream
    using (System.IO.Stream outStream = System.IO.File.Open(dataDir + "mergedXPSfiles.xps", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
    // Initialize XPS input stream
    using (System.IO.Stream inStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open))
    {
        // Load XPS document from the stream
        XpsDocument document = new XpsDocument(inStream, new XpsLoadOptions());
        // or load XPS document directly from file. No xpsStream is needed then.
        // XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());

        // Create an array of XPS files that will be merged with the first one
        string[] filesToMerge = new string[] { dataDir + "Demo.xps", dataDir + "sample.xps" };

        // Merge XPS files to output PDF document
        document.Merge(filesToMerge, outStream);
    }

Kroki scalania kilku XPS do PDF z C# .NET.

  1. Ustaw ścieżkę do katalogu dokumentów.
  2. Zainicjuj strumień wyjściowy PDF.
  3. Zainicjuj strumień wejściowy pliku XPS.
  4. Załaduj dokument XPS ze strumienia XpsDocument Class lub załaduj go bezpośrednio z pliku. W takim przypadku nie potrzebujesz xpsStream.
  5. Zainicjuj obiekt opcji z niezbędnymi parametrami dla pliku wyjściowego za pomocą klasy PdfSaveOptions .
  6. Korzystając z klasy PdfDevice utwórz urządzenie renderujące dla formatu PDF.
  7. Utwórz tablicę plików XPS, które zostaną połączone z pierwszym.
  8. Scal pliki XPS, aby wyprowadzić dokument XPS.

C# do łączenia XPS z PDF

    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithDocumentMerging();
    // Initialize the PDF output stream
    using (System.IO.Stream pdfStream = System.IO.File.Open(dataDir + "mergedXPSfiles.pdf", System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Write))
    // Initialize the XPS input stream
    using (System.IO.Stream xpsStream = System.IO.File.Open(dataDir + "input.xps", System.IO.FileMode.Open))
    {
        // Load the XPS document form the stream
        XpsDocument document = new XpsDocument(xpsStream, new XpsLoadOptions());
        // or load it directly from a file. No xpsStream is needed then.
        // XpsDocument document = new XpsDocument(inputFileName, new XpsLoadOptions());

        // Initialize options object with the necessary parameters.
        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
        };

        // Create a rendering device for the PDF format
        Aspose.Page.XPS.Presentation.Pdf.PdfDevice device = new Aspose.Page.XPS.Presentation.Pdf.PdfDevice(pdfStream);

        // Create an array of XPS files that will be merged with the first one
        string[] filesToMerge = new string[] { dataDir + "Demo.xps", dataDir + "sample.xps" };

        // Merge XPS files to the output PDF document
        document.Merge(filesToMerge, device, options);
    }



Często zadawane pytania

1. Jak scalić pliki XPS?

Ustaw ścieżkę do katalogu dokumentów i zainicjuj strumienie wyjściowe i wejściowe. Załaduj pliki XPS ze strumienia lub plików i połącz je. Jeśli wolisz scalić pliki XPS online, skorzystaj z naszego bezpłatnego, wieloplatformowego połączenia XPS Merger .

2. Jakie formaty wyjściowe są obsługiwane?

Do tej pory rozwiązanie Aspose.Page umożliwia łączenie plików XPS w jeden plik XPS lub plik PDF.

3. Czy funkcjonalność jest bezpłatna?

Fuzje międzyplatformowe są bezpłatne, gdy w przypadku rozwiązania API można uzyskać bezpłatną wersję próbną, a następnie w razie potrzeby kupić produkt.

XPS Co to jest XPS Format pliku

Format XPS jest podobny do formatu PDF. Oba są formatami języka opisu strony (PDL). EPS jest oparty na HTML, a nie na języku PostScript. Plik .eps może zawierać znaczniki struktury dokumentu wraz z informacjami o tym, jak dokument będzie wyglądał. Dodano również instrukcje dotyczące drukowania i renderowania dokumentu. Cechą tego formatu jest to, że poprawia opis dokumentu, co oznacza, że ​​będzie on wyglądał tak samo bez względu na to, kto i z jakiego systemu operacyjnego go otworzy.