Функция Page Builder трансформирует слияние документов, позволяя пользователям без проблем комбинировать страницы из различных документов с точностью и легкостью. Она позволяет объединять страницы в любом порядке, давая полный контроль над структурой конечного документа. Независимо от того, объединяете ли вы несколько ключевых страниц или создаете обширный документ, этот инструмент обеспечивает гибкость и эффективность. Снижая ручные усилия, он упрощает процесс создания индивидуальных документов, экономя ценное время и повышая общую продуктивность как в личных, так и в профессиональных рабочих процессах.

Page Builder - как объединить страницы из документов

Здесь обсуждаются следующие темы:

Если вас интересует Merging documents online, посетите Online Merging Tool, работающий на платформе GroupDocs.

Понимание конструктора страниц

Функция Page Builder вводит упрощенный способ создания настраиваемых документов путем объединения страниц из нескольких исходных документов. Эта функция позволяет разработчикам создавать новый документ шаг за шагом, добавляя страницы в любом порядке из двух или более документов. Вот как работает этот процесс:

  • Начните с загрузки исходного документа Word, используя класс Merger и передайте в конструктор один из исходных документов.
  • Присоедините документы один за другим для объединения, используя метод Join.
  • Инициализируйте Page Builder. Используйте метод CreatePageBuilder из экземпляра Merger. Это служит отправной точкой для создания вашего нового документа.
  • Метод AddPage экземпляра Page Builder позволяет добавлять в целевой документ любую конкретную страницу из ранее объединенных документов.
  • для каждого исходного документа выберите конкретные страницы, которые вы хотите включить в индекс;
  • добавьте эти страницы в новый документ в желаемой последовательности. Вы можете смешивать и сочетать страницы из разных документов, чтобы удовлетворить ваши потребности;
  • повторите этот процесс для дополнительных исходных документов, убедившись, что у вас есть гибкость комбинировать страницы таким образом, который наилучшим образом соответствует вашим требованиям;
  • Используя ApplyPageBuilder метод для применения изменений из экземпляра Page Builder
  • Сохраните объединённый документ в любое место. Как только все необходимые страницы будут добавлены, сохраните новый документ. Финальный результат будет полностью настроенным файлом, содержащим страницы из нескольких источников, организованным именно так, как вы хотите.

Этот пошаговый подход упрощает создание документов, адаптированных к конкретным случаям, таким как составление отчетов, создание персонализированных презентаций или сбор юридических документов. С помощью Page Builder разработчики имеют полный контроль над порядком страниц и содержимым, что устраняет необходимость в трудоемких ручных правках и обеспечивает точность в итоговом результате.

Пример случая и реализация кода

Давайте продемонстрируем, как использовать функцию Конструктора Страниц в GroupDocs.Merger на практическом примере. Чтобы упростить задачу, предположим, что у нас есть два документа:

  • Document A with 4 pages.
  • Document B с 4 страницами.

Мы стремимся создать новый документ, объединяя страницы из этих двух документов в различных последовательностях на основе конкретных сценариев.

Page Builder - Структура документа образцов A и B с 4 страницами каждая

Здесь мы отметили каждую страницу документа буквой A, B и номером страницы. Из документов A и B нам нужно получить адаптированный документ C со следующим структурой

Page Builder - Структура документа образцов A и B с 4 страницами каждая

Следующий фрагмент исходного кода показывает, как объединить определенные страницы из нескольких документов в результирующем документе.

string documentA = @"documentA.pdf";
string documentB = @"documentB.pdf";
string documentC = @"documentC.pdf";

using (Merger merger = new Merger(documentA))
{
    merger.Join(documentB);

    PageBuilder pageBuilder = merger.CreatePageBuilder();
    // get documents A and B references
    var docA = pageBuilder.Documents[0];
    var docB = pageBuilder.Documents[1];
    
    pageBuilder.AddPage(docA.Pages[0]); // document A, page 1 or Page A-1
    pageBuilder.AddPage(docB.Pages[0]); // document B, page 1 or Page B-1
    pageBuilder.AddPage(docB.Pages[1]); // document B, page 2 or Page B-2
    pageBuilder.AddPage(docB.Pages[2]); // document B, page 3 or Page B-3
    pageBuilder.AddPage(docA.Pages[1]); // document A, page 2 or Page A-2
    pageBuilder.AddPage(docA.Pages[3]); // document A, page 4 or Page A-4
    
    // Apply the page order
    merger.ApplyPageBuilder(pageBuilder);

    merger.Save(documentC);
}

Указание диапазона необходимых страниц

При работе с манипуляцией документами добавление нескольких страниц эффективно имеет решающее значение для управления сложными рабочими процессами. Вместо того чтобы добавлять страницы по одной, вы можете использовать метод AddPageRange, который принимает массив объектов IPageInfo, каждый из которых представляет конкретную страницу. Этот подход упрощает процесс, сокращает повторяющийся код и улучшает производительность, позволяя выполнять пакетные операции. Ниже приведен пример кода, демонстрирующий, как использовать этот метод для добавления нескольких страниц из различных документов в одной упрощенной операции.

Вот шаги для объединения нескольких страниц из различных документов, указывая их в качестве диапазона:

  • Создайте объект Merger и укажите путь или поток исходного файла.
  • Используйте Join , чтобы добавить другой исходный документ. Повторите этот шаг для каждого документа, который вы хотите объединить.
  • Создайте объект PageBuilder, вызвав метод CreatePageBuilder.
  • Вызовите метод AddPageRange и передайте массив объектов IPageInfo, описывающих соответствующие страницы. Обратите внимание, что объекты IPageInfo используют индексацию с нуля для исходных документов и номеров страниц.
  • Используйте метод ApplyPageBuilder, чтобы применить указанную последовательность страниц к объединенному документу.
  • Сохраните полученный документ, вызвав метод Save и указав путь к файлу.
string documentA = @"documentA.pdf";
string documentB = @"documentB.pdf";
string documentC = @"documentC.pdf";

using (Merger merger = new Merger(documentA))
{
    merger.Join(documentB);

    PageBuilder pageBuilder = merger.CreatePageBuilder();
     // get documents A and B references
    var docA = pageBuilder.Documents[0];
    var docB = pageBuilder.Documents[1];
    // Specify a range of pages
    IPageInfo[] range = new IPageInfo[] {
        docA.Pages[0], // Page A-1 from the document A
        docB.Pages[0], // Page B-1 from the document B
        docB.Pages[1], // Page B-2 from the document B
        docB.Pages[2], // Page B-3 from the document B
        docA.Pages[1], // Page A-2 from the document A
        docA.Pages[3], // Page A-4 from the document A                    
    };
    // Append a page of pages
    pageBuilder.AddPageRange(range);

    // Apply the page order
    merger.ApplyPageBuilder(pageBuilder);

    merger.Save(documentC);
}

Заключение

Эти примеры иллюстрируют универсальность функции Page Builder. Разработчики могут легко объединять страницы из нескольких документов в различных последовательностях для создания адаптированных выводов. Эта функция значительно уменьшает ручной труд и обеспечивает точность в генерации документов, что делает её незаменимым инструментом для различных случаев использования.

Получите бесплатную лицензию на API

Вы можете get a free temporary license для использования API без ограничений на оценку.

Создайте собственное приложение для сборки страницы Merge Page Builder

Вот несколько важных ссылок, которые помогут вам в создании вашего собственного приложения для сравнения документов.

Документация | Справочник API | Поддерживаемые форматы файлов

Running Examples – GitHub | Free Support Forum | Release Notes

Смотрите также

Для получения дополнительной информации и ресурсов вам могут быть полезны следующие ссылки: