Appliquer des effets 3D dans PowerPoint à l'aide de Python

MS PowerPoint fournit des effets 3D pour rendre les présentations plus attrayantes. Vous pouvez utiliser du texte, des formes et des images 3D pour améliorer l’interactivité du contenu. Dans cet article, vous apprendrez à appliquer les effets 3D dans PowerPoint PPT par programme en Python. Nous expliquerons comment créer des effets 3D pour le texte, les formes et les images dans les présentations.

Bibliothèque Python pour appliquer des effets 3D dans PowerPoint

Aspose.Slides for Python via .NET est une bibliothèque Python riche en fonctionnalités conçue pour créer et manipuler des présentations PowerPoint. Nous utiliserons cette bibliothèque pour appliquer des effets 3D dans les présentations PowerPoint PPT/PPTX. Utilisez la commande suivante pour installer la bibliothèque à partir de PyPI.

> pip install aspose.slides

Créer un texte 3D dans PowerPoint en Python

Voici les étapes pour créer un fragment de texte 3D dans PowerPoint PPT à l’aide de Python.

  • Tout d’abord, créez un nouveau PPT ou chargez-en un existant à l’aide de la classe Presentation.
  • Ensuite, ajoutez une nouvelle forme de rectangle en utilisant la méthode addautoshape().
  • Définissez les propriétés de la forme telles que le type de remplissage, le texte, etc.
  • Récupère la référence de la partie de texte à l’intérieur de la forme dans un objet.
  • Appliquer la mise en forme à la partie texte.
  • Obtenir la référence du cadre de texte à l’intérieur de la forme.
  • Appliquez des effets 3D à l’aide des propriétés de textframe.textframeformat.threedformat.
  • Enfin, enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment créer un texte 3D dans PowerPoint en Python.

with slides.Presentation() as pres:
    # add shape
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)
    shape.fill_format.fill_type = slides.FillType.NO_FILL
    shape.fill_format.fill_type = slides.FillType.NO_FILL
    shape.line_format.fill_format.fill_type = slides.FillType.NO_FILL
    shape.text_frame.text = "3D text"

    # access text portion and apply formatting
    portion = shape.text_frame.paragraphs[0].portions[0]
    portion.portion_format.fill_format.fill_type = slides.FillType.PATTERN
    portion.portion_format.fill_format.pattern_format.fore_color.color = drawing.Color.dark_orange
    portion.portion_format.fill_format.pattern_format.back_color.color = drawing.Color.white
    portion.portion_format.fill_format.pattern_format.pattern_style = slides.PatternStyle.LARGE_GRID

    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 128

    # access text frame
    textFrame = shape.text_frame

    # set up "Arch Up" WordArt transform effect
    textFrame.text_frame_format.transform = slides.TextShapeType.ARCH_UP

    # apply 3D effects
    textFrame.text_frame_format.three_dformat.extrusion_height = 3.5
    textFrame.text_frame_format.three_dformat.depth = 3
    textFrame.text_frame_format.three_dformat.material = slides.MaterialPresetType.PLASTIC
    textFrame.text_frame_format.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    textFrame.text_frame_format.three_dformat.light_rig.light_type = slides.light_rigPresetType.BALANCED
    textFrame.text_frame_format.three_dformat.light_rig.set_rotation(0, 0, 40)

    textFrame.text_frame_format.three_dformat.camera.camera_type = slides.CameraPresetType.PERSPECTIVE_CONTRASTING_RIGHT_FACING

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-text.png")

    # save presentation
    pres.save("3D-text.pptx", slides.export.SaveFormat.PPTX)

La capture d’écran suivante montre la sortie de l’exemple de code ci-dessus.

Créer un texte 3D dans PowerPoint en python

Créer une forme 3D dans PowerPoint en Python

Semblable au texte, vous pouvez appliquer des effets 3D aux formes dans les présentations PowerPoint. Voici les étapes pour créer une forme 3D dans PowerPoint en Python.

  • Tout d’abord, créez un nouveau PPT en utilisant la classe Presentation.
  • Ensuite, ajoutez une nouvelle forme de rectangle en utilisant la méthode addautoshape().
  • Définissez le texte de la forme à l’aide de la propriété shape.textframe.text.
  • Appliquez des effets 3D à la forme à l’aide des propriétés de shape.threedformat.
  • Enfin, enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment appliquer des effets 3D à des formes dans PowerPoint à l’aide de Python.

with slides.Presentation() as pres:
    # add shape
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 200, 200)
    shape.text_frame.text = "3D"
    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 64

    # apply 3D effects
    shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
    shape.three_dformat.camera.set_rotation(20, 30, 40)
    shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
    shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    shape.three_dformat.material = slides.MaterialPresetType.FLAT 
    shape.three_dformat.extrusion_height = 100
    shape.three_dformat.extrusion_color.color = drawing.Color.blue

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape.png")

    # save presentation
    pres.save("3D-shape.pptx", slides.export.SaveFormat.PPTX)

Voici la forme 3D que nous obtenons après l’exécution de ce code.

Créer une forme 3D dans PowerPoint en Python

Créer un dégradé pour les formes 3D

Vous pouvez également appliquer des effets de dégradé aux formes en suivant les étapes ci-dessous.

  • Tout d’abord, créez un nouveau PPT en utilisant la classe Presentation.
  • Ensuite, ajoutez une nouvelle forme de rectangle en utilisant la méthode addautoshape().
  • Définissez le texte de la forme à l’aide de la propriété shape.textframe.text.
  • Définissez shape.fillformat.filltype sur FillType.GRADIENT et définissez les couleurs du dégradé.
  • Appliquez des effets 3D à la forme à l’aide des propriétés de shape.threedformat.
  • Enfin, enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

L’exemple de code suivant montre comment appliquer des effets de dégradé à des formes dans PowerPoint.

with slides.Presentation() as pres:
    # add shape
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)
    shape.text_frame.text = "3D"
    shape.text_frame.paragraphs[0].paragraph_format.default_portion_format.font_height = 64

    # set fill type as gradient
    shape.fill_format.fill_type = slides.FillType.GRADIENT
    shape.fill_format.gradient_format.gradient_stops.add(0, drawing.Color.blue)
    shape.fill_format.gradient_format.gradient_stops.add(100, drawing.Color.orange)

    # apply 3D effects
    shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
    shape.three_dformat.camera.set_rotation(10, 20, 30)
    shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
    shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
    shape.three_dformat.extrusion_height = 150
    shape.three_dformat.extrusion_color.color = drawing.Color.dark_orange

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("3D-shape-gradient.png")

    # save presentation
    pres.save("3D-shape-gradient.pptx", slides.export.SaveFormat.PPTX)

Voici la forme 3D après application de l’effet de dégradé.

Créer un dégradé pour les formes 3D dans PPT

Appliquer des effets 3D à une image dans PowerPoint en Python

Vous pouvez également appliquer des effets 3D aux images dans les présentations PowerPoint. Voici les étapes pour effectuer cette opération en Python.

  • Créez un nouveau PPT en utilisant la classe Presentation.
  • Ensuite, ajoutez une nouvelle forme de rectangle en utilisant la méthode addautoshape().
  • Définissez shape.fillformat.filltype sur FillType.PICTURE et ajoutez une image.
  • Appliquez des effets 3D à la forme à l’aide des propriétés de shape.threedformat.
  • Enregistrez la présentation à l’aide de la méthode Presentation.save(String, SaveFormat).

Voici les étapes pour appliquer des effets 3D à une image dans PPT en utilisant Python.

with slides.Presentation() as pres:
    # add shape
    shape = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 200, 150, 250, 250)

    # set fill type as picture
    shape.fill_format.fill_type = slides.FillType.PICTURE

    # load image from file
    with open("tiger.bmp", "rb") as fs : 
        data = fs.read()

        # set image
        shape.fill_format.picture_fill_format.picture.image = pres.images.add_image(data)
        shape.fill_format.picture_fill_format.picture_fill_mode = slides.PictureFillMode.STRETCH

        # apply 3D effects to image
        shape.three_dformat.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
        shape.three_dformat.camera.set_rotation(10, 20, 30)
        shape.three_dformat.light_rig.light_type = slides.LightRigPresetType.FLAT
        shape.three_dformat.light_rig.direction = slides.LightingDirection.TOP
        shape.three_dformat.extrusion_height = 150
        shape.three_dformat.extrusion_color.color = drawing.Color.dark_orange

    # save as image (optional)
    pres.slides[0].get_thumbnail(2, 2).save("image_3d.png")

    # save presentation
    pres.save("3D-image.pptx", slides.export.SaveFormat.PPTX)

Voici l’image résultante que nous obtenons après l’application des effets 3D.

Appliquer des effets 3D à une image dans PowerPoint en Python

Obtenez une licence gratuite

Vous pouvez obtenir une licence temporaire gratuite pour utiliser Aspose.Slides for Python via .NET sans limitations d’évaluation.

Conclusion

Dans cet article, vous avez appris à appliquer des effets 3D dans des présentations PowerPoint à l’aide de Python. Nous avons expliqué comment créer du texte ou des formes 3D et appliquer des effets 3D aux images dans les présentations PPT ou PPTX. Si vous souhaitez en savoir plus sur Aspose.Slides for Python via .NET, vous pouvez consulter la documentation. Vous pouvez également poster vos questions sur notre forum.

Voir également