Déplacer les pages PDF en Python

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

Aspose.PDF for Python vous permet de déplacer une page (pas seulement de la copier) d’un PDF à un autre. Il supprime la page sélectionnée du document original, puis l’ajoute à un nouveau fichier PDF.

Considérez cela comme couper une page d’un livre et la coller dans un autre — la page n’existe plus dans le fichier original après le déplacement.

  1. Ouvrez le document PDF source en utilisant le Document classe.
  2. Sélectionnez une page spécifique à déplacer (dans ce cas, la page 2) — cela fait référence à un Page.
  3. Créez un nouveau document PDF (instanciez un autre Document).
  4. Ajoutez la page sélectionnée au nouveau document PDF en utilisant le document de destination PageCollection (par exemple, another_document.pages.add(page)).
  5. Supprimez la page du document original via son PageCollection (par exemple, document.pages.delete(index)).
  6. Enregistrez les deux documents.

L’extrait de code suivant vous montre comment déplacer une page.

import aspose.pdf as ap

def move_page_from_one_document_to_another(
    input_file_name: str, output_file_name: str
) -> None:

    document = ap.Document(input_file_name)
    page = document.pages[2]
    another_document = ap.Document()
    another_document.pages.add(page)
    document.pages.delete(2)
    document.save(input_file_name.replace(".pdf", "_new.pdf"))
    another_document.save(output_file_name)

Déplacer plusieurs pages d’un document PDF à un autre

Contrairement à la copie, cette opération transfère les pages sélectionnées — les supprimant du fichier source et les enregistrant dans un nouveau PDF.

  1. Créer un nouveau document de destination vide (Document).
  2. Sélectionner plusieurs pages (dans ce cas, les pages 1 et 3) du document source PageCollection.
  3. Parcourez les pages sélectionnées et ajoutez chacune au document de destination PageCollection.
  4. Enregistrez le document de destination contenant les pages déplacées.
  5. Supprimez les pages déplacées du document source en utilisant son PageCollection.
  6. Enregistrez le document source modifié avec un nouveau nom de fichier pour conserver les deux versions.

L’extrait de code suivant montre comment déplacer plusieurs pages.

import aspose.pdf as ap

def move_multiple_pages_from_one_document_to_another(
    input_file_name: str, output_file_name: str
) -> None:
    src_document = ap.Document(input_file_name)
    dst_document = ap.Document()
    pages = [1, 2]
    for page_index in pages:
        page = src_document.pages[page_index]
        dst_document.pages.add(page)
    # Save output files
    dst_document.save(output_file_name)
    src_document.pages.delete(pages)
    src_document.save(input_file_name.replace(".pdf", "_new.pdf"))

Déplacer une page vers un nouvel emplacement dans le même document PDF

Il montre comment déplacer une page spécifique vers une position différente au sein du même document — un besoin courant lors de la réorganisation ou de la modification de mises en page PDF.

  1. Chargez le document PDF d’entrée en utilisant le Document classe.
  2. Sélectionnez la page que vous souhaitez déplacer (page 2) — ceci est un Page.
  3. Ajoutez-le à la fin du document en utilisant le document PageCollection.
  4. Supprimez la page originale de son emplacement précédent via le PageCollection.
  5. Enregistrez le document modifié sous un nouveau fichier.
import aspose.pdf as ap

def move_page_in_new_location_in_same_document(
    input_file_name: str, output_file_name: str
) -> None:
    src_document = ap.Document(input_file_name)

    page = src_document.pages[2]
    src_document.pages.add(page)
    src_document.pages.delete(2)

    # Save output file
    src_document.save(output_file_name)

Sujets de page associés