動畫
Contents
[
Hide
]
展示如何使用 Aspose.Slides for PHP via Java 建立簡單的動畫並管理其順序。
新增動畫
建立一個矩形形狀,並套用在點擊時觸發的淡入效果。
function addAnimation() {
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
$shape = $slide->getShapes()->addAutoShape(ShapeType::Rectangle, 50, 50, 100, 100);
// 淡入效果。
$slide->getTimeline()->getMainSequence()->addEffect($shape, EffectType::Fade, EffectSubtype::None, EffectTriggerType::OnClick);
$presentation->save("animation.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
存取動畫
從投影片時間軸中取得第一個動畫效果。
function accessAnimation() {
$presentation = new Presentation("animation.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
// 取得第一個動畫效果。
$effect = $slide->getTimeline()->getMainSequence()->get_Item(0);
} finally {
$presentation->dispose();
}
}
移除動畫
從序列中移除動畫效果。
function removeAnimation() {
$presentation = new Presentation("animation.pptx");
try {
$slide = $presentation->getSlides()->get_Item(0);
$effect = $slide->getTimeline()->getMainSequence()->get_Item(0);
// 移除效果。
$slide->getTimeline()->getMainSequence()->remove($effect);
$presentation->save("animation_removed.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}
動畫序列
新增多個效果,並示範動畫發生的順序。
function sequenceAnimations() {
$presentation = new Presentation();
try {
$slide = $presentation->getSlides()->get_Item(0);
$shape1 = $slide->getShapes()->addAutoShape(ShapeType::Rectangle, 50, 50, 100, 100);
$shape2 = $slide->getShapes()->addAutoShape(ShapeType::Ellipse, 200, 50, 100, 100);
$sequence = $slide->getTimeline()->getMainSequence();
$sequence->addEffect($shape1, EffectType::Fly, EffectSubtype::Bottom, EffectTriggerType::OnClick);
$sequence->addEffect($shape2, EffectType::Fly, EffectSubtype::Bottom, EffectTriggerType::OnClick);
$presentation->save("animation_sequence.pptx", SaveFormat::Pptx);
} finally {
$presentation->dispose();
}
}