Formater les formes PowerPoint en Python

Introduction

Dans PowerPoint, vous pouvez ajouter des formes aux diapositives. Puisque les formes sont constituées de lignes, vous pouvez les mettre en forme en modifiant ou en appliquant des effets à leurs contours. De plus, vous pouvez formater les formes en spécifiant des paramètres qui contrôlent la façon dont leurs intérieurs sont remplis.

format-shape-powerpoint

Aspose.Slides for Python fournit des classes et des propriétés qui vous permettent de formater les formes en utilisant les mêmes options disponibles dans PowerPoint.

Format des lignes

En utilisant Aspose.Slides, vous pouvez spécifier un style de ligne personnalisé pour une forme. Les étapes suivantes décrivent la procédure :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le line style de la forme.
  5. Définissez la largeur de la ligne.
  6. Définissez le dash style de la forme.
  7. Définissez la couleur de ligne de la forme.
  8. Enregistrez la présentation modifiée au format PPTX.

Le code Python suivant montre comment formater un rectangle AutoShape :

import aspose.slides as slides
import aspose.pydrawing as draw

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 150, 150, 75)

    # Supprimer le remplissage de la forme rectangle afin que seules ses lignes soient visibles.
    shape.fill_format.fill_type = slides.FillType.NO_FILL

    # Appliquer le formatage aux lignes du rectangle.
    shape.line_format.style = slides.LineStyle.THICK_THIN
    shape.line_format.width = 7
    shape.line_format.dash_style = slides.LineDashStyle.DASH

    # Définir la couleur de la ligne du rectangle.
    shape.line_format.fill_format.fill_type = slides.FillType.SOLID
    shape.line_format.fill_format.solid_fill_color.color = draw.Color.blue

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("formatted_lines.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

Les lignes formatées dans la présentation

Appliquer des effets de croquis aux lignes de forme

Un effet de croquis rend la ligne d’une forme semblable à un dessin à main levée. Utilisez Shape.line_format pour accéder aux paramètres de ligne, LineFormat.sketch_format pour accéder aux paramètres de croquis, et SketchFormat.sketch_type pour sélectionner une valeur dans l’énumération LineSketchType.

Le code Python suivant montre comment appliquer un effet LineSketchType.CURVED, lire la valeur explicitement assignée et supprimer l’effet avec LineSketchType.NONE :

import aspose.slides as slides

with slides.Presentation() as presentation:
    slide = presentation.slides[0]
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 200, 100)

    # Accéder au format de ligne de la forme et à son format de croquis.
    sketch_format = shape.line_format.sketch_format

    # Appliquer un effet de croquis.
    sketch_format.sketch_type = slides.LineSketchType.CURVED

    # Lire l'effet de croquis assigné directement à la forme.
    explicit_sketch_type = sketch_format.sketch_type
    print(f"Explicit sketch type: {explicit_sketch_type}")

    # Supprimer l'effet de croquis.
    sketch_format.sketch_type = slides.LineSketchType.NONE

La valeur retournée par SketchFormat.sketch_type représente le paramètre attribué directement à la forme. Si le format de ligne peut être hérité d’un thème, d’une diapositive maître ou d’une diapositive de mise en page, utilisez LineFormat.get_effective, accédez à la propriété sketch_format de l’objet retourné, et lisez sa propriété sketch_type. La valeur effective reflète le format réellement appliqué après résolution de l’héritage :

import aspose.slides as slides

with slides.Presentation("presentation.pptx") as presentation:
    shape = presentation.slides[0].shapes[0]
    line_format = shape.line_format

    explicit_sketch_type = line_format.sketch_format.sketch_type
    effective_line_format = line_format.get_effective()
    effective_sketch_type = effective_line_format.sketch_format.sketch_type

    print(f"Explicit sketch type: {explicit_sketch_type}")
    print(f"Effective sketch type: {effective_sketch_type}")

Formater les styles de jointure

Voici les trois options de type de jointure :

  • Arrondi
  • Queue d’aronde
  • Biseau

Par défaut, lorsqu PowerPoint joint deux lignes à un angle (par exemple au coin d’une forme), il utilise le paramètre Arrondi. Cependant, si vous dessinez une forme avec des angles aiguës, vous pourriez préférer l’option Queue d’aronde.

Le style de jointure dans la présentation

Le code Python suivant montre comment trois rectangles (comme indiqué sur l’image ci‑dessus) ont été créés en utilisant les paramètres de jointure Queue d’aronde, Biseau et Arrondi :

import aspose.slides as slides
import aspose.pydrawing as draw

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

	# Obtenir la première diapositive.
	slide = presentation.slides[0]

	# Ajouter trois formes automatiques de type Rectangle.
	shape1 = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 20, 20, 150, 75)
	shape2 = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 210, 20, 150, 75)
	shape3 = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 20, 135, 150, 75)

	# Définir la couleur de remplissage pour chaque forme rectangle.
	shape1.fill_format.fill_type = slides.FillType.SOLID
	shape1.fill_format.solid_fill_color.color = draw.Color.black
	shape2.fill_format.fill_type = slides.FillType.SOLID
	shape2.fill_format.solid_fill_color.color = draw.Color.black
	shape3.fill_format.fill_type = slides.FillType.SOLID
	shape3.fill_format.solid_fill_color.color = draw.Color.black

	# Définir la largeur de la ligne.
	shape1.line_format.width = 15
	shape2.line_format.width = 15
	shape3.line_format.width = 15

	# Définir la couleur de la ligne de chaque rectangle.
	shape1.line_format.fill_format.fill_type = slides.FillType.SOLID
	shape1.line_format.fill_format.solid_fill_color.color = draw.Color.blue
	shape2.line_format.fill_format.fill_type = slides.FillType.SOLID
	shape2.line_format.fill_format.solid_fill_color.color = draw.Color.blue
	shape3.line_format.fill_format.fill_type = slides.FillType.SOLID
	shape3.line_format.fill_format.solid_fill_color.color = draw.Color.blue

	# Définir le style de jointure.
	shape1.line_format.join_style = slides.LineJoinStyle.MITER
	shape2.line_format.join_style = slides.LineJoinStyle.BEVEL
	shape3.line_format.join_style = slides.LineJoinStyle.ROUND

	# Ajouter du texte à chaque rectangle.
	shape1.text_frame.text = "Miter Join style"
	shape2.text_frame.text = "Bevel Join style"
	shape3.text_frame.text = "Round Join style"

	# Enregistrer le fichier PPTX sur le disque.
	presentation.save("join_styles.pptx", slides.export.SaveFormat.PPTX)

Remplissage dégradé

Dans PowerPoint, le remplissage dégradé est une option de mise en forme qui vous permet d’appliquer un mélange continu de couleurs à une forme. Par exemple, vous pouvez appliquer deux couleurs ou plus de façon à ce que l’une se fond progressivement dans l’autre.

Voici comment appliquer un remplissage dégradé à une forme avec Aspose.Slides :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le FillType de la forme sur GRADIENT.
  5. Ajoutez vos deux couleurs préférées avec des positions définies en utilisant les méthodes add de la collection gradient_stops exposée par la classe GradientFormat.
  6. Enregistrez la présentation modifiée au format PPTX.

Le code Python suivant montre comment appliquer un effet de remplissage dégradé à une ellipse :

import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Ellipse.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.ELLIPSE, 50, 50, 150, 75)

    # Appliquer le format de dégradé à l'ellipse.
    shape.fill_format.fill_type = slides.FillType.GRADIENT
    shape.fill_format.gradient_format.gradient_shape = slides.GradientShape.LINEAR

    # Définir la direction du dégradé.
    shape.fill_format.gradient_format.gradient_direction = slides.GradientDirection.FROM_CORNER2

    # Ajouter deux arrêts de dégradé.
    shape.fill_format.gradient_format.gradient_stops.add(1.0, slides.PresetColor.PURPLE)
    shape.fill_format.gradient_format.gradient_stops.add(0, slides.PresetColor.RED)

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("gradient_fill.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

L’ellipse avec remplissage dégradé

Remplissage de motif

Dans PowerPoint, le remplissage de motif est une option de mise en forme qui vous permet d’appliquer un motif bicolore — tel que des points, des rayures, des hachures croisées ou des damiers — à une forme. Vous pouvez choisir des couleurs personnalisées pour le premier plan et l’arrière‑plan du motif.

Aspose.Slides propose plus de 45 styles de motif prédéfinis que vous pouvez appliquer aux formes pour améliorer l’aspect visuel de vos présentations. Même après avoir sélectionné un motif prédéfini, vous pouvez toujours spécifier les couleurs exactes qu’il doit utiliser.

Voici comment appliquer un remplissage de motif à une forme avec Aspose.Slides :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le FillType de la forme sur PATTERN.
  5. Choisissez un style de motif parmi les options prédéfinies.
  6. Définissez le back_color du motif.
  7. Définissez le fore_color du motif.
  8. Enregistrez la présentation modifiée au format PPTX.

Le code Python suivant montre comment appliquer un remplissage de motif à un rectangle :

import aspose.slides as slides
import aspose.pydrawing as draw

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 150, 75)

    # Définir le type de remplissage sur Pattern.
    shape.fill_format.fill_type = slides.FillType.PATTERN

    # Définir le style du motif.
    shape.fill_format.pattern_format.pattern_style = slides.PatternStyle.TRELLIS

    # Définir les couleurs d'arrière-plan et de premier plan du motif.
    shape.fill_format.pattern_format.back_color.color = draw.Color.light_gray
    shape.fill_format.pattern_format.fore_color.color = draw.Color.yellow

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("pattern_fill.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

Le rectangle avec remplissage de motif

Remplissage d’image

Dans PowerPoint, le remplissage d’image est une option de mise en forme qui vous permet d’insérer une image à l’intérieur d’une forme — utilisant effectivement l’image comme arrière‑plan de la forme.

Voici comment utiliser Aspose.Slides pour appliquer un remplissage d’image à une forme :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le FillType de la forme sur PICTURE.
  5. Définissez le mode de remplissage d’image sur TILE (ou tout autre mode préféré).
  6. Créez un objet PPImage à partir de l’image que vous souhaitez utiliser.
  7. Affectez cette image à la propriété picture.image du picture_fill_format de la forme.
  8. Enregistrez la présentation modifiée au format PPTX.

Supposons que nous disposions d’un fichier « lotus.png » avec l’image suivante :

L’image lotus

Le code Python suivant montre comment remplir une forme avec l’image :

import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 192, 95)

    # Définir le type de remplissage sur Picture.
    shape.fill_format.fill_type = slides.FillType.PICTURE

    # Définir le mode de remplissage d'image.
    shape.fill_format.picture_fill_format.picture_fill_mode = slides.PictureFillMode.TILE

    # Charger une image et l'ajouter aux ressources de la présentation.
    with slides.Images.from_file("lotus.png") as image:
        presentation_image = presentation.images.add_image(image)

    # Définir l'image.
    shape.fill_format.picture_fill_format.picture.image = presentation_image

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("picture_fill.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

La forme avec remplissage d’image

Image en mosaïque comme texture

Si vous souhaitez définir une image en mosaïque comme texture et personnaliser le comportement du pavage, vous pouvez utiliser les propriétés suivantes de la classe PictureFillFormat :

  • picture_fill_mode: Définit le mode de remplissage d’image — soit TILE soit STRETCH.
  • tile_alignment: Spécifie l’alignement des tuiles à l’intérieur de la forme.
  • tile_flip: Contrôle si la tuile est retournée horizontalement, verticalement ou les deux.
  • tile_offset_x: Définit le décalage horizontal de la tuile (en points) par rapport à l’origine de la forme.
  • tile_offset_y: Définit le décalage vertical de la tuile (en points) par rapport à l’origine de la forme.
  • tile_scale_x: Définit l’échelle horizontale de la tuile en pourcentage.
  • tile_scale_y: Définit l’échelle verticale de la tuile en pourcentage.

Le fragment de code suivant montre comment ajouter une forme rectangulaire avec un remplissage d’image en mosaïque et configurer les options de pavage :

import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    first_slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = first_slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 190, 95)

    # Définir le type de remplissage de la forme sur Picture.
    shape.fill_format.fill_type = slides.FillType.PICTURE

    # Charger l'image et l'ajouter aux ressources de la présentation.
    with slides.Images.from_file("lotus.png") as source_image:
        presentation_image = presentation.images.add_image(source_image)

    # Affecter l'image à la forme.
    picture_fill_format = shape.fill_format.picture_fill_format
    picture_fill_format.picture.image = presentation_image

    # Configurer le mode de remplissage d'image et les propriétés de mosaïquage.
    picture_fill_format.picture_fill_mode = slides.PictureFillMode.TILE
    picture_fill_format.tile_offset_x = -32
    picture_fill_format.tile_offset_y = -32
    picture_fill_format.tile_scale_x = 50
    picture_fill_format.tile_scale_y = 50
    picture_fill_format.tile_alignment = slides.RectangleAlignment.BOTTOM_RIGHT
    picture_fill_format.tile_flip = slides.TileFlip.FLIP_BOTH

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("tile.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

Les options de pavage

Remplissage de couleur unie

Dans PowerPoint, le remplissage de couleur unie est une option de mise en forme qui remplit une forme avec une couleur unique et uniforme. Cette couleur d’arrière‑plan plain est appliquée sans dégradés, textures ou motifs.

Pour appliquer un remplissage de couleur unie à une forme avec Aspose.Slides, suivez ces étapes :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le FillType de la forme sur SOLID.
  5. Attribuez votre couleur de remplissage préférée à la forme.
  6. Enregistrez la présentation modifiée au format PPTX.

Le code Python suivant montre comment appliquer un remplissage de couleur unie à un rectangle dans une diapositive PowerPoint :

import aspose.slides as slides
import aspose.pydrawing as draw

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 150, 75)

    # Définir le type de remplissage sur Solid.
    shape.fill_format.fill_type = slides.FillType.SOLID

    # Définir la couleur de remplissage.
    shape.fill_format.solid_fill_color.color = draw.Color.yellow

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("solid_color_fill.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

La forme avec remplissage de couleur unie

Définir la transparence

Dans PowerPoint, lorsque vous appliquez une couleur unie, un dégradé, une image ou un remplissage de texture aux formes, vous pouvez également définir un niveau de transparence pour contrôler l’opacité du remplissage. Une valeur de transparence plus élevée rend la forme plus translucide, permettant au fond ou aux objets sous‑jacent d’être partiellement visibles.

Aspose.Slides vous permet de définir le niveau de transparence en ajustant la valeur alpha de la couleur utilisée pour le remplissage. Voici comment procéder :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez le type de remplissage sur SOLID.
  5. Utilisez Color.from_argb pour définir une couleur avec transparence (le composant alpha contrôle la transparence).
  6. Enregistrez la présentation.

Le code Python suivant montre comment appliquer une couleur de remplissage transparente à un rectangle :

import aspose.pydrawing as draw
import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]
    
    # Ajouter une forme automatique rectangle solide.
    slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 150, 75)

    # Ajouter une forme automatique rectangle transparent au-dessus de la forme solide.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 80, 80, 150, 75)
    shape.fill_format.fill_type = slides.FillType.SOLID
    shape.fill_format.solid_fill_color.color = draw.Color.from_argb(128, 204, 102, 0)
    
    presentation.save("shape_transparency.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

La forme transparente

Faire pivoter les formes

Aspose.Slides vous permet de faire pivoter les formes dans les présentations PowerPoint. Cela peut être utile lors du positionnement d’éléments visuels avec des exigences d’alignement ou de conception spécifiques.

Pour faire pivoter une forme sur une diapositive, suivez ces étapes :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez la propriété rotation de la forme à l’angle souhaité.
  5. Enregistrez la présentation.

Le code Python suivant montre comment faire pivoter une forme de 5 degrés :

import aspose.slides as slides

# Instancier la classe Presentation qui représente un fichier de présentation.
with slides.Presentation() as presentation:

    # Obtenir la première diapositive.
    slide = presentation.slides[0]

    # Ajouter une forme automatique de type Rectangle.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 150, 75)

    # Faire pivoter la forme de 5 degrés.
    shape.rotation = 5

    # Enregistrer le fichier PPTX sur le disque.
    presentation.save("shape_rotation.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

La rotation de la forme

Ajouter des effets de biseau 3D

Aspose.Slides vous permet d’appliquer des effets de biseau 3D aux formes en configurant leurs propriétés ThreeDFormat.

Pour ajouter des effets de biseau 3D à une forme, suivez ces étapes :

  1. Instanciez la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Configurez le [ThreeDFormat] de la forme pour définir les paramètres de biseau.
  5. Enregistrez la présentation.

Le code Python suivant montre comment appliquer des effets de biseau 3D à une forme :

import aspose.slides as slides
import aspose.pydrawing as draw

# Créer une instance de la classe Presentation.
with slides.Presentation() as presentation:

    slide = presentation.slides[0]

    # Ajouter une forme à la diapositive.
    shape = slide.shapes.add_auto_shape(slides.ShapeType.ELLIPSE, 50, 50, 100, 100)
    shape.fill_format.fill_type = slides.FillType.SOLID
    shape.fill_format.solid_fill_color.color = draw.Color.green
    shape.line_format.fill_format.fill_type = slides.FillType.SOLID
    shape.line_format.fill_format.solid_fill_color.color = draw.Color.orange
    shape.line_format.width = 2.0

    # Définir les propriétés ThreeDFormat de la forme.
    shape.three_d_format.depth = 4
    shape.three_d_format.bevel_top.bevel_type = slides.BevelPresetType.CIRCLE
    shape.three_d_format.bevel_top.height = 6
    shape.three_d_format.bevel_top.width = 6
    shape.three_d_format.camera.camera_type = slides.CameraPresetType.ORTHOGRAPHIC_FRONT
    shape.three_d_format.light_rig.light_type = slides.LightRigPresetType.THREE_PT
    shape.three_d_format.light_rig.direction = slides.LightingDirection.TOP

    # Enregistrer la présentation au format PPTX.
    presentation.save("3D_bevel_effect.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

L’effet de biseau 3D

Ajouter des effets de rotation 3D

Aspose.Slides vous permet d’appliquer des effets de rotation 3D aux formes en configurant leurs propriétés ThreeDFormat.

Pour appliquer une rotation 3D à une forme :

  1. Créez une instance de la classe Presentation.
  2. Obtenez une référence à une diapositive par son index.
  3. Ajoutez une AutoShape à la diapositive.
  4. Définissez les propriétés camera_type et light_type de la forme pour définir la rotation 3D.
  5. Enregistrez la présentation.

Le code Python suivant montre comment appliquer des effets de rotation 3D à une forme :

import aspose.slides as slides

# Créer une instance de la classe Presentation.
with slides.Presentation() as presentation:

    slide = presentation.slides[0]

    auto_shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 150, 75)
    auto_shape.text_frame.text = "Hello, Aspose!"

    auto_shape.three_d_format.depth = 6
    auto_shape.three_d_format.camera.set_rotation(40, 35, 20)
    auto_shape.three_d_format.camera.camera_type = slides.CameraPresetType.ISOMETRIC_LEFT_UP
    auto_shape.three_d_format.light_rig.light_type = slides.LightRigPresetType.BALANCED

    # Enregistrer la présentation au format PPTX.
    presentation.save("3D_rotation_effect.pptx", slides.export.SaveFormat.PPTX)

Le résultat :

L’effet de rotation 3D

Contrôler le rendu noir et blanc des formes

La propriété Shape.black_white_mode indique comment une forme individuelle est rendue lorsqu’une présentation est visualisée ou traitée en mode noir et blanc. Elle n’active pas l’affichage en noir et blanc elle‑même et ne modifie pas le remplissage, les lignes ou tout autre formatage de la forme en mode couleur normal.

Utilisez une valeur de l’énumération BlackWhiteMode pour sélectionner le comportement souhaité. Par exemple, AUTOMATIC laisse l’application de rendu choisir la conversion, GRAY et LIGHT_GRAY utilisent le gris, BLACK_WHITE n’utilise que le noir et blanc, BLACK et WHITE forcent une couleur unique, COLOR conserve les couleurs normales, et HIDDEN omet la forme en mode noir et blanc. NOT_DEFINED signifie qu’aucun mode au niveau de la forme n’est attribué.

Le code Python suivant crée une forme colorée et la fait apparaître en gris en mode d’affichage noir et blanc :

import aspose.slides as slides
import aspose.pydrawing as draw

with slides.Presentation() as presentation:
    slide = presentation.slides[0]

    shape = slide.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 50, 50, 200, 100)
    shape.fill_format.fill_type = slides.FillType.SOLID
    shape.fill_format.solid_fill_color.color = draw.Color.orange

    # Conserver le remplissage orange en mode couleur, mais rendre la forme avec une coloration grise en mode noir et blanc.
    shape.black_white_mode = slides.BlackWhiteMode.GRAY

    presentation.save("shape_black_white_mode.pptx", slides.export.SaveFormat.PPTX)

En mode couleur normal, le rectangle conserve son remplissage orange. En mode d’affichage noir et blanc, il utilise le gris car son mode est réglé sur GRAY. Cela vous permet de conserver une diapositive en couleur complète tout en définissant une apparence distincte pour l’impression, l’aperçu ou d’autres flux qui respectent les paramètres d’affichage noir et blanc de la présentation.

Réinitialiser le formatage

Le code Python suivant montre comment réinitialiser le formatage d’une diapositive et rétablir la position, la taille et le formatage de toutes les formes avec espaces réservés sur le LayoutSlide à leurs paramètres par défaut :

import aspose.slides as slides

with slides.Presentation("sample.pptx") as presentation:

    for slide in presentation.slides:
        # Réinitialiser chaque forme de la diapositive qui possède un espace réservé sur la mise en page.
        slide.reset()

    presentation.save("reset_formatting.pptx", slides.export.SaveFormat.PPTX)

FAQ

Le formatage des formes affecte-t-il la taille finale du fichier de présentation ?

Seulement légèrement. Les images et les médias incorporés occupent la majeure partie de l’espace du fichier, tandis que les paramètres des formes tels que les couleurs, les effets et les dégradés sont stockés comme métadonnées et n’ajoutent pratiquement aucune taille supplémentaire.

Comment détecter les formes sur une diapositive qui partagent le même formatage afin de les regrouper ?

Comparez les propriétés de formatage clés de chaque forme — remplissage, ligne et paramètres d’effet. Si toutes les valeurs correspondantes sont identiques, considérez leurs styles comme identiques et regroupez logiquement ces formes, ce qui simplifie la gestion ultérieure des styles.

Puis‑je enregistrer un ensemble de styles de formes personnalisés dans un fichier séparé pour les réutiliser dans d’autres présentations ?

Oui. Stockez des formes d’exemple avec les styles souhaités dans un diaporama modèle ou un fichier de modèle .POTX. Lors de la création d’une nouvelle présentation, ouvrez le modèle, clonez les formes stylisées dont vous avez besoin et réappliquez leur formatage où cela est requis.