using Aspose.Pdf;
using Aspose.Pdf.Text;
using System;

namespace AsposeTests
{
    class Program
    {
        static void Main(string[] args)
        {
            // Initialize license
            License lic = new License();
            lic.SetLicense("Aspose.Total.lic");

            // Initialize a document
            Document srcDocument = new Document();

            // Add pages and set sample text
            for (int i = 1; i <= 10; i++)
                srcDocument.Pages.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment($"Text on page {i}"));

            // Move page #2 to the end of the document 
            var page = srcDocument.Pages[2];
            srcDocument.Pages.Add(page);
            srcDocument.Pages.Delete(2);
            srcDocument.Save("output1.pdf");

            // Move page 3 after page 7
            page = srcDocument.Pages[3];
            srcDocument.Pages.Insert(7, page);
            srcDocument.Pages.Delete(3);

            // Save the output file
            srcDocument.Save("output2.pdf");

            Console.WriteLine("Pages rearranged successfully");
        }
    }
}