Aspose.Slides FOSS für Python ermöglicht es Ihnen, professionelle visuelle Effekte auf PowerPoint-Formen vollständig in Python anzuwenden, ohne Microsoft Office und API-Schlüssel. Dieser Beitrag zeigt das im Library verfügbare Füllsystem, 2D-Effekte und 3D -Formatierung an.


Das Füllsystem

Jede Form hat ein `fill_format, das die Farbe des Innenraums steuert. Die fünf Fülltypen decken den gesamten Bereich der PowerPoint-Designpalette ab.

Füllmasse

Die einfachste Füllung, eine flache Farbe mit optionalem Transparent:

from aspose.slides_foss import ShapeType, FillType
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.ROUND_CORNER_RECTANGLE, 100, 100, 400, 150
    )
    shape.add_text_frame("Solid Fill")

    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.from_argb(255, 30, 80, 180)

    prs.save("solid.pptx", SaveFormat.PPTX)

Lineare Gradientenfüllung

Gradient-Stopps lassen Sie sich von einer Farbe zur anderen über die Form mischen:

from aspose.slides_foss import ShapeType, FillType, GradientShape
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.RECTANGLE, 100, 100, 400, 150
    )

    ff = shape.fill_format
    ff.fill_type = FillType.GRADIENT
    gf = ff.gradient_format
    gf.gradient_shape = GradientShape.LINEAR
    gf.linear_gradient_angle = 90   # top-to-bottom

    gf.gradient_stops.add(0.0, Color.from_argb(255, 30, 80, 180))   # top: blue
    gf.gradient_stops.add(1.0, Color.from_argb(255, 0, 200, 160))   # bottom: teal

    prs.save("gradient.pptx", SaveFormat.PPTX)

2D-Bildwirkung

Außenfallschatten

An jede Form einen halbdurchsichtigen Tröpfenschatten anbringen:

from aspose.slides_foss import ShapeType, FillType
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.ROUND_CORNER_RECTANGLE, 100, 100, 350, 150
    )
    shape.add_text_frame("Drop Shadow")

    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.white

    ef = shape.effect_format
    ef.enable_outer_shadow_effect()
    ef.outer_shadow_effect.blur_radius = 12
    ef.outer_shadow_effect.direction = 315   # upper-left
    ef.outer_shadow_effect.distance = 8
    ef.outer_shadow_effect.shadow_color.color = Color.from_argb(100, 0, 0, 0)

    prs.save("shadow.pptx", SaveFormat.PPTX)

Glanzeffekt

Eine farbige Halo um die Form Kante:

from aspose.slides_foss import ShapeType, FillType
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.ELLIPSE, 150, 100, 250, 250
    )
    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.from_argb(255, 20, 60, 140)

    ef = shape.effect_format
    ef.enable_glow_effect()
    ef.glow_effect.radius = 20
    ef.glow_effect.color.color = Color.from_argb(200, 0, 180, 255)

    prs.save("glow.pptx", SaveFormat.PPTX)

3D-Formatierung

Baum und Material

Die Eigenschaft three_d_format verleiht jeder flachen Form ein dreidimensionales Erscheinungsbild. Kombinieren Sie eine Bevel mit einer Kameravorstellung und einem Material für das reichste Ergebnis:

from aspose.slides_foss import (
    ShapeType, FillType,
    BevelPresetType, CameraPresetType,
    LightRigPresetType, LightingDirection,
    MaterialPresetType,
)
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.RECTANGLE, 150, 150, 300, 130
    )
    shape.add_text_frame("Metal Button")

    # Blue solid fill
    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.from_argb(255, 20, 70, 160)

    # 3D bevel + camera + light + material
    tdf = shape.three_d_format
    tdf.bevel_top.bevel_type = BevelPresetType.CIRCLE
    tdf.bevel_top.width = 10
    tdf.bevel_top.height = 5
    tdf.camera.camera_type = CameraPresetType.PERSPECTIVE_ABOVE
    tdf.light_rig.light_type = LightRigPresetType.BALANCED
    tdf.light_rig.direction = LightingDirection.TOP
    tdf.material = MaterialPresetType.METAL
    tdf.depth = 20

    prs.save("metal-button.pptx", SaveFormat.PPTX)

Wirkung auf die gleiche Form kombinieren

Schatten und 3D-Formatierung können auf einer einzigen Form koexistieren, was polierte “Karten” ermöglicht:

from aspose.slides_foss import (
    ShapeType, FillType,
    BevelPresetType, CameraPresetType, MaterialPresetType,
)
from aspose.slides_foss.drawing import Color
import aspose.slides_foss as slides
from aspose.slides_foss.export import SaveFormat

with slides.Presentation() as prs:
    shape = prs.slides[0].shapes.add_auto_shape(
        ShapeType.ROUND_CORNER_RECTANGLE, 120, 120, 360, 150
    )
    shape.add_text_frame("Premium Card")

    # Fill
    shape.fill_format.fill_type = FillType.SOLID
    shape.fill_format.solid_fill_color.color = Color.from_argb(255, 30, 80, 180)

    # 3D bevel
    tdf = shape.three_d_format
    tdf.bevel_top.bevel_type = BevelPresetType.CIRCLE
    tdf.bevel_top.width = 8
    tdf.camera.camera_type = CameraPresetType.PERSPECTIVE_ABOVE
    tdf.material = MaterialPresetType.PLASTIC

    # Drop shadow
    ef = shape.effect_format
    ef.enable_outer_shadow_effect()
    ef.outer_shadow_effect.blur_radius = 14
    ef.outer_shadow_effect.direction = 270
    ef.outer_shadow_effect.distance = 8
    ef.outer_shadow_effect.shadow_color.color = Color.from_argb(70, 0, 0, 0)

    prs.save("premium-card.pptx", SaveFormat.PPTX)

Installation

pip install aspose-slides-foss

Keine Office-Installation, keine Lizenzschlüssel, kein Netzwerkrufen. Alle Verarbeitung erfolgt lokal.


Verwandte Ressourcen

  • Referenz für das EffectFormat und das ThreeDFormate
  • Referenz für das FillFormat-Verzeichnis
  • Wie man 3D-Effekte anwendet
  • Arbeiten mit 3D-Effekten: Entwicklerhandbuch
  • Wie man anfängt