Formanimation
Animationen sind visuelle Effekte, die auf Texte, Bilder, Formen oder Diagramme angewendet werden können. Sie verleihen Präsentationen oder deren Bestandteilen Leben.
Warum Animationen in Präsentationen verwenden?
Durch die Verwendung von Animationen können Sie
- den Fluss von Informationen steuern
- wichtige Punkte hervorheben
- das Interesse oder die Beteiligung Ihres Publikums erhöhen
- Inhalte leichter lesbar, verständlich oder verarbeitbar machen
- die Aufmerksamkeit Ihrer Leser oder Zuschauer auf wichtige Teile der Präsentation lenken
PowerPoint bietet viele Optionen und Werkzeuge für Animationen und Animationseffekte in den Kategorien Eingang, Ausgang, Hervorhebung und Bewegungsbahnen.
Animationen in Aspose.Slides
- Aspose.Slides bietet die Klassen und Typen, die Sie benötigen, um mit Animationen im Aspose.Slides.Animation Namespace zu arbeiten,
- Aspose.Slides bietet über 150 Animationseffekte unter der EffectType Enumeration. Diese Effekte sind im Wesentlichen die gleichen (oder äquivalenten) Effekte, die in PowerPoint verwendet werden.
Animation auf TextBox anwenden
Aspose.Slides für Python über .NET ermöglicht es Ihnen, Animationen auf den Text in einer Form anzuwenden.
- Erstellen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich eine Referenz auf die Folie über ihren Index.
- Fügen Sie eine
rectangle
IAutoShape hinzu. - Fügen Sie Text zu
IAutoShape.TextFrame
hinzu. - Holen Sie sich eine Hauptsequenz von Effekten.
- Fügen Sie einen Animationseffekt zu IAutoShape hinzu.
- Setzen Sie die
TextAnimation.BuildType
-Eigenschaft auf den Wert aus derBuildType
-Enumeration. - Schreiben Sie die Präsentation als PPTX-Datei auf die Festplatte.
Dieser Python-Code zeigt Ihnen, wie Sie den Fade
-Effekt auf AutoShape anwenden und die Textanimation auf den Nach 1. Ebene Absätzen Wert setzen:
import aspose.slides as slides
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt.
with slides.Presentation() as pres:
sld = pres.slides[0]
# Fügt eine neue AutoShape mit Text hinzu
autoShape = sld.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 20, 20, 150, 100)
textFrame = autoShape.text_frame
textFrame.text = "Erster Absatz \nZweiter Absatz \n Dritter Absatz"
# Holt sich die Hauptsequenz der Folie.
sequence = sld.timeline.main_sequence
# Fügt dem Shape einen Fade-Animationseffekt hinzu
effect = sequence.add_effect(autoShape, slides.animation.EffectType.FADE, slides.animation.EffectSubtype.NONE, slides.animation.EffectTriggerType.ON_CLICK)
# Animiert den Text des Shapes nach den 1. Ebene Absätzen
effect.text_animation.build_type = slides.animation.BuildType.BY_LEVEL_PARAGRAPHS1
# Speichern Sie die PPTX-Datei auf der Festplatte
pres.save("AnimText_out.pptx", slides.export.SaveFormat.PPTX)
Animation auf PictureFrame anwenden
- Erstellen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich eine Referenz auf die Folie über ihren Index.
- Fügen Sie einen PictureFrame auf der Folie hinzu oder holen Sie ihn.
- Holen Sie sich die Hauptsequenz von Effekten.
- Fügen Sie einen Animationseffekt zu PictureFrame hinzu.
- Schreiben Sie die Präsentation als PPTX-Datei auf die Festplatte.
Dieser Python-Code zeigt Ihnen, wie Sie den Fly
-Effekt auf einen Bildrahmen anwenden:
import aspose.slides as slides
import aspose.pydrawing as draw
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt.
with slides.Presentation() as pres:
# Lädt ein Bild, das in der Präsentation hinzugefügt werden soll
img = draw.Bitmap("aspose-logo.jpg")
image = pres.images.add_image(img)
# Fügt einen PictureFrame zur Folie hinzu
picFrame = pres.slides[0].shapes.add_picture_frame(slides.ShapeType.RECTANGLE, 50, 50, 100, 100, image)
# Holt sich die Hauptsequenz der Folie.
sequence = pres.slides[0].timeline.main_sequence
# Fügt dem PictureFrame einen Fly von links-Animationseffekt hinzu
effect = sequence.add_effect(picFrame, slides.animation.EffectType.FLY,
slides.animation.EffectSubtype.LEFT,
slides.animation.EffectTriggerType.ON_CLICK)
# Speichern Sie die PPTX-Datei auf der Festplatte
pres.save("AnimImage_out.pptx", slides.export.SaveFormat.PPTX)
Animation auf Form anwenden
- Erstellen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich eine Referenz auf die Folie über ihren Index.
- Fügen Sie eine
rectangle
IAutoShape hinzu. - Fügen Sie eine
Bevel
IAutoShape hinzu (wenn dieses Objekt angeklickt wird, wird die Animation abgespielt). - Erstellen Sie eine Sequenz von Effekten auf der Bevel-Form.
- Erstellen Sie einen benutzerdefinierten
UserPath
. - Fügen Sie Befehle hinzu, um zum
UserPath
zu bewegen. - Schreiben Sie die Präsentation als PPTX-Datei auf die Festplatte.
Dieser Python-Code zeigt Ihnen, wie Sie den PathFootball
(Fußballpfad) Effekt auf eine Form anwenden:
import aspose.slides.animation as anim
import aspose.slides as slides
import aspose.pydrawing as draw
# Instanziiert eine Präsentationsklasse, die eine PPTX-Datei darstellt
with slides.Presentation() as pres:
sld = pres.slides[0]
# Erstellt den PathFootball-Effekt für eine vorhandene Form von Grund auf.
ashp = sld.shapes.add_auto_shape(slides.ShapeType.RECTANGLE, 150, 150, 250, 25)
ashp.add_text_frame("Animierter Textkasten")
# Fügt den PathFootBall-Animationseffekt hinzu.
pres.slides[0].timeline.main_sequence.add_effect(ashp,
anim.EffectType.PATH_FOOTBALL,
anim.EffectSubtype.NONE,
anim.EffectTriggerType.AFTER_PREVIOUS)
# Erstellt eine Art "Schaltfläche".
shapeTrigger = pres.slides[0].shapes.add_auto_shape(slides.ShapeType.BEVEL, 10, 10, 20, 20)
# Erstellt eine Sequenz von Effekten für die Schaltfläche.
seqInter = pres.slides[0].timeline.interactive_sequences.add(shapeTrigger)
# Erstellt einen benutzerdefinierten Benutzerpfad. Unser Objekt wird nur bewegt, nachdem die Schaltfläche geklickt wurde.
fxUserPath = seqInter.add_effect(ashp,
anim.EffectType.PATH_USER,
anim.EffectSubtype.NONE,
anim.EffectTriggerType.ON_CLICK)
# Fügt Befehle zum Bewegen hinzu, da der erstellte Pfad leer ist.
motionBhv = fxUserPath.behaviors[0]
pts = [draw.PointF(0.076, 0.59)]
motionBhv.path.add(anim.MotionCommandPathType.LINE_TO, pts, anim.MotionPathPointsType.AUTO, True)
pts = [draw.PointF(-0.076, -0.59)]
motionBhv.path.add(anim.MotionCommandPathType.LINE_TO, pts, anim.MotionPathPointsType.AUTO, False)
motionBhv.path.add(anim.MotionCommandPathType.END, None, anim.MotionPathPointsType.AUTO, False)
# Schreibt die PPTX-Datei auf die Festplatte
pres.save("AnimExample_out.pptx", slides.export.SaveFormat.PPTX)
Die auf eine Form angewendeten Animationseffekte abrufen
Sie können sich entscheiden, alle auf eine bestimmte Form angewendeten Animationseffekte herauszufinden.
Dieser Python-Code zeigt Ihnen, wie Sie alle auf eine bestimmte Form angewendeten Effekte abrufen:
import aspose.slides as slides
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt.
with slides.Presentation("AnimExample_out.pptx") as pres:
firstSlide = pres.slides[0]
# Holt sich die Hauptsequenz der Folie.
sequence = firstSlide.timeline.main_sequence
# Holt sich die erste Form auf der Folie.
shape = firstSlide.shapes[0]
# Holt sich alle auf die Form angewendeten Animationseffekte.
shapeEffects = sequence.get_effects_by_shape(shape)
if len(shapeEffects) > 0:
print("Die Form " + shape.name + " hat " + str(len(shapeEffects)) + " Animationseffekte.")
Animationseffekt-Zeitparameter ändern
Aspose.Slides für Python über .NET ermöglicht Ihnen, die Zeitparameter eines Animationseffekts zu ändern.
Das ist das Animations-Zeitpaneel in Microsoft PowerPoint:
Diese sind die Entsprechungen zwischen PowerPoint-Zeiten und den Effect.Timing
-Eigenschaften:
- PowerPoint Zeit Start Dropdown-Liste entspricht der Effect.Timing.TriggerType Eigenschaft.
- PowerPoint Zeit Dauer entspricht der
Effect.Timing.Duration
-Eigenschaft. Die Dauer einer Animation (in Sekunden) ist die Gesamtzeit, die die Animation benötigt, um einen Zyklus abzuschließen. - PowerPoint Zeit Verzögerung entspricht der
Effect.Timing.TriggerDelayTime
-Eigenschaft.
So ändern Sie die Effekt-Zeitparameter:
- Wenden Sie an oder holen Sie sich den Animationseffekt.
- Setzen Sie neue Werte für die benötigten
Effect.Timing
-Eigenschaften. - Speichern Sie die modifizierte PPTX-Datei.
Dieser Python-Code demonstriert die Operation:
import aspose.slides as slides
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt.
with slides.Presentation("AnimExample_out.pptx") as pres:
# Holt sich die Hauptsequenz der Folie.
sequence = pres.slides[0].timeline.main_sequence
# Holt sich den ersten Effekt der Hauptsequenz.
effect = sequence[0]
# Ändert den TriggerType des Effekts, um beim Klicken zu starten
effect.timing.trigger_type = slides.animation.EffectTriggerType.ON_CLICK
# Ändert die Dauer des Effekts
effect.timing.duration = 3
# Ändert die TriggerDelayTime des Effekts
effect.timing.trigger_delay_time = 0.5
# Speichert die PPTX-Datei auf der Festplatte
pres.save("AnimExample_changed.pptx", slides.export.SaveFormat.PPTX)
Animations-Effekt-Sound
Aspose.Slides bietet diese Eigenschaften, die es Ihnen ermöglichen, mit Sounds in Animationseffekten zu arbeiten:
sound
stop_previous_sound
Animationseffekt-Sound hinzufügen
Dieser Python-Code zeigt Ihnen, wie Sie einen Animationseffekt-Sound hinzufügen und ihn stoppen, wenn der nächste Effekt beginnt:
import aspose.slides as slides
with Presentation("AnimExample_out.pptx") as pres:
# Fügt Audio zur Präsentations-Audiosammlung hinzu
effect_sound = pres.audios.add_audio(open("sampleaudio.wav", "rb").read())
first_slide = pres.slides[0]
# Holt sich die Hauptsequenz der Folie.
sequence = first_slide.timeline.main_sequence
# Holt sich den ersten Effekt der Hauptsequenz
first_effect = sequence[0]
# Überprüft den Effekt auf "Kein Sound"
if not first_effect.stop_previous_sound and first_effect.sound is None:
# Fügt Sound für den ersten Effekt hinzu
first_effect.sound = effect_sound
# Holt sich die erste interaktive Sequenz der Folie.
interactive_sequence = first_slide.timeline.interactive_sequences[0]
# Setzt den Effekt "Vorherigen Sound stoppen"-Flag
interactive_sequence[0].stop_previous_sound = True
# Schreibt die PPTX-Datei auf die Festplatte
pres.save("AnimExample_Sound_out.pptx", slides.export.SaveFormat.PPTX)
Animations-Effekt-Sound extrahieren
- Erstellen Sie eine Instanz der Presentation Klasse.
- Holen Sie sich eine Referenz auf die Folie über ihren Index.
- Holen Sie sich die Hauptsequenz von Effekten.
- Extrahieren Sie den
sound
, der in jeden Animationseffekt eingebettet ist.
Dieser Python-Code zeigt Ihnen, wie Sie den in einem Animationseffekt eingebetteten Sound extrahieren:
import aspose.slides as slides
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt.
with slides.Presentation("EffectSound.pptx") as presentation:
slide = presentation.slides[0]
# Holt sich die Hauptsequenz der Folie.
sequence = slide.timeline.main_sequence
for effect in sequence:
if effect.sound is None:
continue
# Extrahiert den Effekt-Sound in ein Byte-Array
audio = effect.sound.binary_data
Nach Animation
Aspose.Slides für .NET ermöglicht es Ihnen, die Nachanimations-Eigenschaft eines Animationseffekts zu ändern.
Das ist das Animations-Effekt-Paneel und das erweiterte Menü in Microsoft PowerPoint:
Die Effekt Nach Animation Dropdown-Liste entspricht diesen Eigenschaften:
after_animation_type
Eigenschaft, die den Nachanimations-Typ beschreibt :- PowerPoint Weitere Farben entspricht dem COLOR Typ;
- PowerPoint Nicht dimmen Listenpunkt entspricht dem DO_NOT_DIM Typ (Standard-Nachanimationstyp);
- PowerPoint Nach Animation ausblenden Element entspricht dem HIDE_AFTER_ANIMATION Typ;
- PowerPoint Bei der nächsten Mausklick ausblenden Element entspricht dem HIDE_ON_NEXT_MOUSE_CLICK Typ;
after_animation_color
Eigenschaft, die ein Nachanimationsfarbformat definiert. Diese Eigenschaft funktioniert in Verbindung mit dem COLOR Typ. Wenn Sie den Typ auf einen anderen ändern, wird die Nachanimationsfarbe gelöscht.
Dieser Python-Code zeigt Ihnen, wie Sie einen Nachanimations-Effekt ändern:
import aspose.slides as slides
# Instanziiert eine Präsentationsklasse, die eine Präsentationsdatei darstellt
with slides.Presentation("AnimImage_out.pptx") as pres:
first_slide = pres.slides[0]
# Holt sich den ersten Effekt der Hauptsequenz
first_effect = first_slide.timeline.main_sequence[0]
# Ändert den Nachanimations-Typ auf Farbe
first_effect.after_animation_type = AfterAnimationType.COLOR
# Setzt die Nachanimations-Dimfarbe
first_effect.after_animation_color.color = Color.alice_blue
# Schreibt die PPTX-Datei auf die Festplatte
pres.save("AnimImage_AfterAnimation.pptx", slides.export.SaveFormat.PPTX)
Text animieren
Aspose.Slides bietet diese Eigenschaften, die es Ihnen ermöglichen, mit dem Text animieren Block eines Animationseffekts zu arbeiten:
animate_text_type
, die einen Animationstexttyp des Effekts beschreibt. Der Text der Form kann animiert werden:- Alles auf einmal (ALL_AT_ONCE Typ)
- Nach Wort (BY_WORD Typ)
- Nach Buchstabe (BY_LETTER Typ)
delay_between_text_parts
setzt eine Verzögerung zwischen den animierten Textteilen (Wörtern oder Buchstaben). Ein positiver Wert gibt den Prozentsatz der Effekt-Dauer an. Ein negativer Wert gibt die Verzögerung in Sekunden an.
So ändern Sie die Eigenschaften des Effekt-Animierte Textes:
- Wenden Sie an oder holen Sie sich den Animationseffekt.
- Setzen Sie die
build_type
-Eigenschaft auf den AS_ONE_OBJECT Wert, um den Animationsmodus Nach Absätzen auszuschalten. - Setzen Sie neue Werte für die
animate_text_type
unddelay_between_text_parts
Eigenschaften. - Speichern Sie die modifizierte PPTX-Datei.
Dieser Python-Code demonstriert die Operation:
import aspose.slides as slides
with slides.Presentation("AnimTextBox_out.pptx") as pres:
first_slide = pres.slides[0]
# Holt sich den ersten Effekt der Hauptsequenz
first_effect = first_slide.timeline.main_sequence[0]
# Ändert den Effekt-Textanimationstyp auf "Als ein Objekt"
first_effect.text_animation.build_type = slides.animation.BuildType.AS_ONE_OBJECT
# Ändert den Effekt-Animierte Texttyp auf "Nach Wort"
first_effect.animate_text_type = slides.animation.AnimateTextType.BY_WORD
# Setzt die Verzögerung zwischen den Wörtern auf 20% der Effekt-Dauer
first_effect.delay_between_text_parts = 20
# Schreibt die PPTX-Datei auf die Festplatte
pres.save("AnimTextBox_AnimateText.pptx", slides.export.SaveFormat.PPTX)