Move PDF Pages programmatically C#

Moving a Page from one PDF Document to Another

This topic explains how to move page from one PDF document to the end of another document using C#. To move an page we should:

  1. Create a Document class object with the source PDF file.
  2. Create a Document class object with the destination PDF file.
  3. Get Page from the the PageCollection collection’s.
  4. Add page to the destination document.
  5. Save the output PDF using the Save method.
  6. Delete page in source document.
  7. Save the source PDF using the Save method.

The following code snippet shows you how to move one page.

public static void MovePage()
{
    var srcFileName = "<enter file name>";
    var dstFileName = "<enter file name>";
    var srcDocument = new Aspose.Pdf.Document();
    var dstDocument = new Aspose.Pdf.Document();
    var page = srcDocument.Pages[2];
    dstDocument.Pages.Add(page);
    // Save output file
    dstDocument.Save(srcFileName);
    srcDocument.Pages.Delete(2);
    srcDocument.Save(dstFileName);
}

Moving bunch of Pages from one PDF Document to Another

  1. Create a Document class object with the source PDF file.
  2. Create a Document class object with the destination PDF file.
  3. Define an array with page numbers to be moved.
  4. Run loop through array:
    1. Get Page from the the PageCollection collection’s.
    2. Add page to the destination document.
  5. Save the output PDF using the Save method.
  6. Delete page in source document using array.
  7. Save the source PDF using the Save method.

The following code snippet shows you how to insert an empty page at the end of a PDF file.

public static void MoveBunchPages()
{
    var srcFileName = "<enter file name>";
    var dstFileName = "<enter file name>";
    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);
    }                       
    // Save output files
    dstDocument.Save(srcFileName);
    srcDocument.Pages.Delete(pages);
    srcDocument.Save(dstFileName);
}

Moving a Page in new location in the current PDF Document

  1. Create a Document class object with the source PDF file.
  2. Get Page from the the PageCollection collection’s.
  3. Add page to the new location (for example to end).
  4. Delete page in previous location.
  5. Save the output PDF using the Save method.
public static void MovePagesInOnePDF()
{
    var srcFileName = "<enter file name>";
    var dstFileName = "<enter file name>";
    var srcDocument = new Aspose.Pdf.Document(srcFileName);
   
    var page = srcDocument.Pages[2];
    srcDocument.Pages.Add(page);
    srcDocument.Pages.Delete(2);          
   
    // Save output file
    srcDocument.Save(dstFileName);
}