Переместить страницы PDF программно на C#

Перемещение страницы из одного PDF-документа в другой

Эта тема объясняет, как переместить страницу из одного PDF-документа в конец другого документа с использованием C#.

Следующий фрагмент кода также работает с библиотекой Aspose.PDF.Drawing.

Для перемещения страницы необходимо:

  1. Создать объект класса Document с исходным PDF-файлом.
  2. Создать объект класса Document с целевым PDF-файлом.
  3. Получить страницу из коллекции PageCollection.
  4. Добавить страницу в целевой документ.
  5. Сохранить итоговый PDF с использованием метода Save.
  6. Удалить страницу в исходном документе.

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

var srcFileName = "<введите имя файла>";
var dstFileName = "<введите имя файла>";
var srcDocument = new Document(srcFileName);
var dstDocument = new Document();
var page = srcDocument.Pages[2];
dstDocument.Pages.Add(page);
// Сохраните выходной файл
dstDocument.Save(srcFileName);
srcDocument.Pages.Delete(2);
srcDocument.Save(dstFileName);

Перемещение группы страниц из одного PDF-документа в другой

  1. Создайте объект класса Document с исходным PDF-файлом.
  2. Создайте объект класса Document с целевым PDF-файлом.
  3. Определите массив с номерами страниц для перемещения.
  4. Выполните цикл по массиву:
    1. Получите страницу из коллекции PageCollection.
  5. Сохраните выходной PDF с помощью метода Save.
  6. Удалите страницу в исходном документе, используя массив.
  7. Сохраните исходный PDF с помощью метода Save.

Показанный ниже пример кода демонстрирует, как переместить несколько страниц из одного PDF-документа в другой.

var srcFileName = "<введите имя файла>";
var dstFileName = "<введите имя файла>";
var srcDocument = new Aspose.Pdf.Document(srcFileName);
var dstDocument = new Aspose.Pdf.Document();
var pages = new []{ 1, 3 };
foreach (var pageIndex in pages)
{
    var page = srcDocument.Pages[pageIndex];
    dstDocument.Pages.Add(page);
}                       
// Сохраните выходные файлы
dstDocument.Save(dstFileName);
srcDocument.Pages.Delete(pages);
srcDocument.Save(srcFileName);

Перемещение страницы на новую позицию в текущем PDF-документе

  1. Получите страницу из коллекции PageCollection.
  2. Добавьте страницу на новое место (например, в конец).
  3. Удалите страницу с предыдущего места.
  4. Сохраните полученный PDF файл с помощью метода Save.
var srcFileName = "<введите имя файла>";
var dstFileName = "<введите имя файла>";
var srcDocument = new Aspose.Pdf.Document(srcFileName);

var page = srcDocument.Pages[2];
srcDocument.Pages.Add(page);
srcDocument.Pages.Delete(2);          

// Сохраните выходной файл
srcDocument.Save(dstFileName);