Aspose.Slides FOSS for Python lets you apply professional-quality visual effects to PowerPoint shapes entirely in Python, with no Microsoft Office and no API keys. This post demonstrates the fill system, 2D effects, and 3D formatting available in the library.
Fyldsystemet
Hver form har en fill_format der styrer, hvordan dens indre males. De fem udfyldningstyper dækker hele spektret af PowerPoints designpalet.
Ensfarvet fyld
Den simpleste fyldning, en flad farve med valgfri gennemsigtighed:
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)
Lineær gradientfyld
Gradientstoppe giver dig mulighed for at blande fra én farve til en anden over figuren:
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 Visual Effects
Ydre kastskygge
Tilføj en halvgennemsigtig kastskygge til enhver figur:
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)
Glødeffekt
En farvet halo omkring figurens kant:
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 Formatting
Fasning og Materiale
Den three_d_format egenskab giver enhver flad form et tredimensionelt udseende. Kombinér en bevel med en camera preset og et materiale for det rigeste resultat:
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)
Kombinere effekter på samme figur
Skygge og 3D-formatering kan sameksistere på en enkelt form, hvilket muliggør polerede “card”-design:
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
Ingen Office-installation, ingen licensnøgler, ingen netværksopkald; al behandling foregår lokalt.