Java 添加 、讀取以及刪除PPT幻燈片中的視頻、音頻文件

在PPT中,能夠操做不少種元素,如形狀、圖形、文字、圖片、表格等,也能夠插入視頻或者音頻文件,來豐富幻燈片的內容呈現方式。下面將介紹在Java程序中如何來添加視頻、音頻文件到PPT幻燈片,讀取和刪除幻燈片中的視頻、音頻文件。html

程序環境:導入Spire.Presentation.jar(免費版) ;  jdk1.8.0java

jar文件導入效果入下:app

 

 

1. 添加視頻、音頻文件到幻燈片ide

import com.spire.presentation.*;
import java.awt.*;

public class AddVideoAudio {
    public static void main(String[] args) throws Exception{
        //加載測試文檔
        Presentation ppt = new Presentation();
        ppt.loadFromFile("test.pptx");

        //獲取第一張幻燈片
        ISlide slide = ppt.getSlides().get(0);

        //添加視頻文件到指定位置
        slide.getShapes().appendVideoMedia("Transition.mp4",new Rectangle(550, 100, 180, 100));
        //添加音頻文件到指定位置
        slide.getShapes().appendAudioMedia("Myheartwillgoon.mp3",620, 300, true);

        //保存文檔
        ppt.saveToFile("result.pptx",FileFormat.PPTX_2010);
    }
}

2. 獲取幻燈片中的視頻、音頻文件測試

import com.spire.presentation.*;

public class ExtractVideoAudio {
    public static void main(String[]args) throws Exception{
        //加載包含視頻、音頻文件的PPT文檔
        Presentation ppt = new Presentation();
        ppt.loadFromFile("result.pptx");

        //獲取第一張幻燈片
        ISlide slide = ppt.getSlides().get(0);

        IVideo video = null;
        IAudio audio = null;

        //遍歷幻燈片中的shape,判斷是否包含視頻
        for(int i = 0; i< slide.getShapes().getCount(); i++) {
            IShape shape = slide.getShapes().get(i);
            if ((shape instanceof IVideo)) {
                //保存視頻
                video = (IVideo) shape;
                video.getEmbeddedVideoData().saveToFile("提取的視頻" + i + ".mp4");
            }
        }
        //遍歷幻燈片中的shape,判斷是否包含音頻
        for(int j = 0; j< slide.getShapes().getCount(); j++)
        {
            IShape shape = slide.getShapes().get(j);
            //保存音頻
            if ((shape instanceof IAudio)){
                audio =(IAudio) shape;
                audio.getData().saveToFile("提取的音頻"+ j +".mp3");
            }
        }
    }
}

3. 刪除幻燈片中的視頻、音頻文件spa

import com.spire.presentation.*;

public class DeleteVideoAndAudio {
    public static void main(String[] args) throws Exception{
        //加載包含視頻、音頻文件的PPT文檔
        Presentation ppt = new Presentation();
        ppt.loadFromFile("result.pptx");

        //獲取第一張幻燈片
        ISlide slide = ppt.getSlides().get(0);

        //遍歷幻燈片中的shape,判斷是否包含視頻
        for(int i = 0; i< slide.getShapes().getCount(); i++) {
            IShape shape = slide.getShapes().get(i);
            if ((shape instanceof IVideo)) {
                //保存視頻
                IVideo video = (IVideo) shape;
                slide.getShapes().remove(video);
            }
        }
        //遍歷幻燈片中的shape,判斷是否包含音頻
        for(int j = 0; j< slide.getShapes().getCount(); j++)
        {
            IShape shape = slide.getShapes().get(j);
            //保存音頻
            if ((shape instanceof IAudio)){
                IAudio audio = (IAudio) shape;
                slide.getShapes().remove(audio);
            }
        }

        //保存文檔
        ppt.saveToFile("DeleteVideoAndAudio.pptx",FileFormat.PPTX_2013);
        ppt.dispose();
    }
}

相關文章
相關標籤/搜索