Move PDF Pages programmatically C#
Contents
[
Hide
]
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#.
The following code snippet also work with Aspose.PDF.Drawing library.
To move an page we should:
- Create a Document class object with the source PDF file.
- Create a Document class object with the destination PDF file.
- Get Page from the the PageCollection collection’s.
- Add page to the destination document.
- Save the output PDF using the Save method.
- Delete page in source document.
- Save the source PDF using the Save method.
The following code snippet shows you how to move one page.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageFromOnePdfDocumentToAnother()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();
// Open PDF documents
using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingPageInput.pdf"))
{
using (var dstDocument = new Aspose.Pdf.Document())
{
var page = srcDocument.Pages[2];
dstDocument.Pages.Add(page);
// Save PDF document
dstDocument.Save(dataDir + "MovingPage_out.pdf");
srcDocument.Pages.Delete(2);
// Save PDF document
srcDocument.Save(dataDir + "MovingPageInput_out.pdf");
}
}
}
Moving bunch of Pages from one PDF Document to Another
- Create a Document class object with the source PDF file.
- Create a Document class object with the destination PDF file.
- Define an array with page numbers to be moved.
- Run loop through array:
- Get Page from the the PageCollection collection’s.
- Add page to the destination document.
- Save the output PDF using the Save method.
- Delete page in source document using array.
- Save the source PDF using the Save method.
The following code snippet shows you how to move a bunch of pages from one PDF document to another.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingBunchOfPagesFromOnePdfDocumentToAnother()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();
// Open PDF documents
using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingBunchOfPagesInput.pdf"))
{
using (var dstDocument = new Aspose.Pdf.Document())
{
var pages = new[] { 1, 3 };
foreach (int pageIndex in pages)
{
var page = srcDocument.Pages[pageIndex];
dstDocument.Pages.Add(page);
}
// Save PDF document
dstDocument.Save(dataDir + "MovingBunchOfPages_out.pdf");
srcDocument.Pages.Delete(pages);
// Save PDF document
srcDocument.Save(dataDir + "MovingBunchOfPagesInput_out.pdf";
}
}
}
Moving a Page in new location in the current PDF Document
- Create a Document class object with the source PDF file.
- Get Page from the the PageCollection collection’s.
- Add page to the new location (for example to end).
- Delete page in previous location.
- Save the output PDF using the Save method.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageInNewLocationInTheCurrentPdfDocument()
{
// The path to the documents directory
var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();
// Open PDF document
using (var document = new Aspose.Pdf.Document(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocumentInput.pdf"))
{
var page = document.Pages[2];
document.Pages.Add(page);
document.Pages.Delete(2);
// Save PDF document
document.Save(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocument_out.pdf");
}
}