启明办公

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 88|回复: 0

Java 设置PowerPoint幻灯片切换(换片)方式

[复制链接]

1

主题

6

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2022-11-28 13:05:22 | 显示全部楼层 |阅读模式
我们创建一个PowerPoint幻灯片文档,在设置文稿动态演示的相关操作时,需要对每一页的幻灯片设置切换(换片)效果,这里面包含换片方式、持续时间、是否自动切换或者鼠标点击切换、换片的音效等等。在应用到幻灯片时,可选择应用到单一幻灯片的切换或者应用到整篇文档所有幻灯片。本文,将以Java后端代码的方式来展示如何设置幻灯片的切换(换片)。
Jar包引入

引用jar:Spire.Presentation.jar Version: 7.8.2
引入方法1:Maven仓库下载,如下配置pom.xml文件:
<repositories>
        <repository>
            <id>com.e-iceblue</id>
            <url>https://repo.e-iceblue.cn/repository/maven-public/</url>
        </repository>
    </repositories>
<dependencies>
    <dependency>
        <groupId> e-iceblue </groupId>
        <artifactId>spire.presentation</artifactId>
        <version>7.8.2</version>
    </dependency>
</dependencies>引入方法2:下载 jar包 到本地。解压,找到lib文件夹下的Spire.Presentation.jar文件,然在IDEA中打开如下界面,并执行如图步骤将本地路径下的jar文件手动引入Java程序:


设置切换方式

设置切换方式时,可执行如下步骤:

  • 创建Presentation类的对象,并调用Presentation.loadFromFile(String fileName)方法加载幻灯片文档。
  • 使用Presentation.getSlides().get(int Index)方法获取指定幻灯片。
  • 通过ISlide.getSlideShowTransition().setType(TransitionType value)方法设置切换类型、ISlide.getSlideShowTransition().setSoundMode(TransitionSoundMode value)方法设置切换音效、ISlide.getSlideShowTransition().setDuration(long value)方法设置持续时间、ISlide.getSlideShowTransition().setOption(Object value)方法设置效果选项、ISlide.getSlideShowTransition().setSpeed(TransitionSpeed value)方法设置切换速度、ISlide.getSlideShowTransition().setAdvanceOnClick(boolean value)方法设置是否鼠标单击换片、ISlide.getSlideShowTransition().isAdvanceAfterTime(boolean value)方法设置自动换片、ISlide.getSlideShowTransition().setAdvanceAfterTime(long value)方法设置自动换片时间。
  • 调用Presentation.saveToFile(String fileName, FileFormat fileFormat)方法保存文档。
Java
import com.spire.presentation.*;
import com.spire.presentation.drawing.transition.TransitionInOutDirection;
import com.spire.presentation.drawing.transition.TransitionSoundMode;
import com.spire.presentation.drawing.transition.TransitionSpeed;
import com.spire.presentation.drawing.transition.TransitionType;

public class SetTransition {
    public static void main(String[] args) throws Exception{
        //创建Presentation类的对象
        Presentation ppt = new Presentation();

        //加载幻灯片文件
        ppt.loadFromFile("test.pptx");

        //获取第一张幻灯片
        ISlide slide = ppt.getSlides().get(0);

        //设置切换类型
        slide.getSlideShowTransition().setType(TransitionType.FLYTHROUGH);
        //设置切换声音模式
        slide.getSlideShowTransition().setSoundMode(TransitionSoundMode.STOP_PREVOIUS_SOUND);
        //设置持续时间
        slide.getSlideShowTransition().setDuration(2000);
        //设置效果选项
        slide.getSlideShowTransition().setOption(TransitionInOutDirection.OUT);
        //设置切换速度
        slide.getSlideShowTransition().setSpeed(TransitionSpeed.MEDIUM);
        //设置是否鼠标单击换片
        slide.getSlideShowTransition().setAdvanceOnClick(true);
        //设置是否循环切换
        slide.getSlideShowTransition().setLoop(true);
        //设置自动换片及换片时间
        //slide.getSlideShowTransition().isAdvanceAfterTime(true);
        //slide.getSlideShowTransition().setAdvanceAfterTime(5000L);

        //保存文件
        ppt.saveToFile("SetTransition.pptx", FileFormat.PPTX_2010);
    }
}—END—
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|启明办公

Copyright © 2001-2013 Comsenz Inc.Template by Comsenz Inc.All Rights Reserved.

Powered by Discuz!X3.4

快速回复 返回顶部 返回列表