Объединение документов XPS в XPS и PDF

.NET API для объединения нескольких файлов XPS

 

XPS может содержать несколько документов в одном файле, а документы XPS могут включать несколько страниц. Функциональность слияния, предлагаемая API-решением Aspose.Page, разработана таким образом, чтобы вы могли объединять несколько файлов в один. В результате вы получите файл XPS или PDF, содержащий содержимое всех объединенных файлов. Здесь вы найдете пример кода, как объединить XPS с C# .NET. Чтобы увидеть, как такую ​​функциональность можно внедрить в веб-решение или объединить файлы онлайн, попробуйте XPS Merger .

Чтобы объединить файлы XPS, нам нужно:

  • Aspose.Page for .NET API — многофункциональное, мощное и простое в использовании API решение для обработки и преобразования документов для платформы C#.

  • Откройте диспетчер пакетов NuGet, найдите Aspose.Page и установите. Вы также можете использовать следующую команду из консоли диспетчера пакетов.

Package Manager Console Command


    PM> Install-Package Aspose.Page

Порядок действий по объединению нескольких файлов XPS в один с помощью C# .NET.

  1. Укажите путь к каталогу документов.
  2. Инициализируйте выходной поток XPS.
  3. Инициализируйте входной поток файла XPS.
  4. Загрузите документ XPS из потока XpsDocument Class или загрузите его непосредственно из файла. В этом случае вам не нужен xpsStream.
  5. Создайте массив файлов XPS, которые будут объединены с первым.
  6. Объедините файлы XPS для вывода документа XPS.

Код С# для слияния XPS в XPS

    using Aspose.Page.XPS;
    // The path to the documents directory.
    string dataDir = RunExamples.GetDataDir_WorkingWithDocumentMerging();
    // Load XPS document from XPS file
    XpsDocument document = new XpsDocument(dataDir + "input.xps", 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 XPS document
    document.Merge(filesToMerge, dataDir + "mergedXPSfiles.xps");
    }

Порядок действий по объединению нескольких файлов XPS в PDF с помощью C# .NET.

  1. Укажите путь к каталогу документов.
  2. Инициализируйте выходной поток PDF.
  3. Инициализируйте входной поток файла XPS.
  4. Загрузите документ XPS из потока XpsDocument Class или загрузите его непосредственно из файла. В этом случае вам не нужен xpsStream.
  5. Инициализируйте объект options с необходимыми параметрами для выходного файла с помощью класса PdfSaveOptions .
  6. Используя класс PdfDevice , создайте устройство рендеринга для формата PDF.
  7. Создайте массив файлов XPS, которые будут объединены с первым.
  8. Объедините файлы XPS для вывода документа XPS.

С# для объединения XPS в 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);
    }



Часто задаваемые вопросы

1. Как объединить файлы XPS?

Задайте путь к каталогу документов и инициализируйте выходные и входные потоки. Загрузите файлы XPS из потока или файлов и объедините их. Если вам удобнее объединить файлы XPS онлайн, воспользуйтесь нашей бесплатной кросс-платформенной программой XPS Merger .

2. Какие форматы вывода поддерживаются?

К настоящему времени Aspose.Page Solution позволяет объединять файлы XPS в один файл XPS или PDF.

3. Функционал бесплатный?

Кросс-платформенные слияния бесплатны, тогда как для решения API вы можете получить бесплатную пробную версию, а затем при необходимости купить продукт.

XPS Формат файла XPS

Формат XPS похож на формат PDF. Оба являются форматами языка описания страниц (PDL). EPS основан на HTML, а не на языке PostScript. Файл .eps может содержать разметку структуры документа вместе с информацией о том, как документ будет выглядеть. Также добавлены инструкции о том, как распечатать и визуализировать документ. Особенность формата в том, что он фиксирует описание документа, а значит, он будет выглядеть одинаково независимо от того, кто и из какой операционной системы его открывает.