Déplacer des pages PDF par programmation C#

Déplacer une page d’un document PDF à un autre

Ce sujet explique comment déplacer une page d’un document PDF à la fin d’un autre document en utilisant C#.

Le code suivant fonctionne également avec la bibliothèque Aspose.PDF.Drawing.

Pour déplacer une page, nous devrions :

  1. Créer un objet de classe Document avec le fichier PDF source.
  2. Créer un objet de classe Document avec le fichier PDF de destination.
  3. Obtenir la page de la collection PageCollection.
  4. Ajouter la page au document de destination.
  5. Enregistrer le PDF de sortie en utilisant la méthode Save.
  6. Supprimer la page dans le document source.
  7. Enregistrer le PDF source en utilisant la méthode Save.

Le code suivant vous montre comment déplacer une 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");
        }
    }
}

Déplacer un ensemble de pages d’un document PDF à un autre

  1. Créer un objet de classe Document avec le fichier PDF source.
  2. Créer un objet de classe Document avec le fichier PDF de destination.
  3. Définir un tableau avec les numéros de pages à déplacer.
  4. Exécuter une boucle à travers le tableau :
    1. Obtenir la page de la collection PageCollection.
    2. Ajouter la page au document de destination.
  5. Enregistrer le PDF de sortie en utilisant la méthode Save.
  6. Supprimer la page dans le document source en utilisant le tableau.
  7. Enregistrer le PDF source en utilisant la méthode Save.

Le code suivant vous montre comment déplacer un ensemble de pages d’un document PDF à un autre.

// 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";
        }
    }
}

Déplacer une page à un nouvel emplacement dans le document PDF actuel

  1. Créer un objet de classe Document avec le fichier PDF source.
  2. Obtenir la page de la collection PageCollection.
  3. Ajouter la page à la nouvelle position (par exemple à la fin).
  4. Supprimer la page à l’emplacement précédent.
  5. Enregistrer le PDF de sortie en utilisant la méthode Save.
// 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");
    }
}