Créer des présentations en Python

Aperçu

Cet article montre comment créer une présentation avec Aspose.Slides pour Python via .NET, ajouter une forme contenant du texte à sa première diapositive et enregistrer le résultat sous forme de fichier PPTX. La même API permet également d’enregistrer des présentations au format PPT et ODP, de sorte que vous pouvez cibler à la fois les formats PowerPoint et OpenDocument à partir d’une même base de code, sans Microsoft Office. Une FAQ courte à la fin couvre les questions courantes concernant les formats, les modèles, la taille des diapositives, les unités, l’utilisation de la mémoire, le multithreading, la licence, les signatures numériques et la prise en charge VBA.

Avant de commencer, installez le package depuis PyPI avec pip install aspose.slides. Consultez Installation pour les bibliothèques requises également sous Linux et macOS, ainsi que pour l’environnement virtuel dont le Python système de Debian et Ubuntu a besoin.

Créer une présentation

Pour créer une présentation et placer une forme avec du texte sur sa première diapositive, suivez ces étapes :

  1. Créez une instance de la classe Presentation. Une nouvelle présentation contient déjà une diapositive vide.
  2. Récupérez cette diapositive à partir de la collection slides en utilisant son index, 0.
  3. Ajoutez une AutoShape en forme de nuage à l’aide de la méthode add_auto_shape de la collection shapes de la diapositive, et définissez son text.
  4. Enregistrez la présentation en tant que fichier PPTX avec la méthode save.
import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:
    # Récupérer la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une auto-forme de type CLOUD.
    auto_shape = slide.shapes.add_auto_shape(slides.ShapeType.CLOUD, 20, 20, 200, 80)
    auto_shape.text_frame.text = "Hello, Aspose!"

    # Enregistrer la présentation sous forme de fichier PPTX.
    presentation.save("new_presentation.pptx", slides.export.SaveFormat.PPTX)

Le coin supérieur gauche du nuage est à 20 points du bord gauche et à 20 points du bord supérieur de la diapositive, et le nuage mesure 200 points de largeur sur 80 points de hauteur. L’instruction with libère les ressources de la présentation à la fin du bloc. Le script enregistre new_presentation.pptx dans le dossier actuel, avec une diapositive contenant le nuage et son texte. Sans licence, Aspose.Slides ajoute également un filigrane d’évaluation à chaque diapositive enregistrée ; consultez Licence.

Le résultat :

La nouvelle présentation

FAQ

Quels formats puis‑je enregistrer une nouvelle présentation ?

Vous pouvez enregistrer au format PPTX, PPT et ODP, et exporter vers PDF, XPS, HTML, SVG et images, entre autres.

Puis‑je démarrer à partir d’un modèle (POTX/POTM) et enregistrer en PPTX standard ?

Oui. Chargez le modèle et enregistrez-le dans le format souhaité ; les formats POTX/POTM/PPTM et similaires sont pris en charge.

Comment contrôler la taille ou le rapport d’aspect des diapositives lors de la création d’une présentation ?

Définissez la taille de diapositive (incluant des préréglages comme 4:3 et 16:9 ou des dimensions personnalisées) et choisissez comment le contenu doit être mis à l’échelle.

En quelles unités les tailles et les coordonnées sont‑elles mesurées ?

En points : 1 pouce équivaut à 72 unités.

Comment gérer des présentations très volumineuses (avec de nombreux fichiers médias) pour réduire l’utilisation de la mémoire ?

Utilisez les BLOB management strategies, limitez le stockage en mémoire en vous appuyant sur des fichiers temporaires, et privilégiez les flux de travail basés sur des fichiers plutôt que des flux purement en mémoire.

Puis‑je créer/enregistrer des présentations en parallèle ?

Vous ne pouvez pas manipuler la même instance de Presentation depuis multiple threads. Exécutez des instances séparées et isolées par thread ou processus.

Comment supprimer le filigrane d’évaluation et les limitations ?

Appliquer une licence une fois par processus. Le fichier XML de licence doit rester inchangé, et la configuration de licence doit être synchronisée si plusieurs threads sont impliqués.

Puis‑je signer numériquement le PPTX que je crée ?

Oui. Les signatures numériques (ajout et vérification) sont prises en charge pour les présentations.

Les macros (VBA) sont‑elles prises en charge dans les présentations créées ?

Oui. Vous pouvez créer/modifier des projets VBA et enregistrer des fichiers contenant des macros tels que PPTM/PPSM.