Apache POI PPT - 簡報



通常,我們使用 MS-PowerPoint 建立簡報。現在讓我們看看如何使用 Java 建立簡報。完成本章後,您將能夠使用您的 Java 程式建立新的 MS-PowerPoint 簡報並開啟現有的 PPT。

建立空簡報

要建立空簡報,您必須例項化 org.poi.xslf.usermodel 包的 XMLSlideShow 類 -

XMLSlideShow ppt = new XMLSlideShow();

使用 FileOutputStream 類將更改儲存到 PPT 文件 -

File file = new File("C://POIPPT//Examples//example1.pptx");
FileOutputStream out = new FileOutputStream(file);
ppt.write(out);

以下是建立空白 MS-PowerPoint 簡報的完整程式。

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;

public class CreatePresentation {
   public static void main(String args[]) throws IOException {
      //creating a new empty slide show
      XMLSlideShow ppt = new XMLSlideShow();	     
      
      //creating an FileOutputStream object
      File file = new File("example1.pptx");
      FileOutputStream out = new FileOutputStream(file);
      
      //saving the changes to a file
      ppt.write(out);
      System.out.println("Presentation created successfully");
      out.close();
   }
}

將上述 Java 程式碼儲存為 CreatePresentation.java,然後從命令提示符編譯並執行它,如下所示 -

$javac CreatePresentation.java
$java CreatePresentation

如果您的系統環境已配置 POI 庫,它將編譯並執行以在當前目錄中生成一個名為 example1.pptx 的空白 PPT 檔案,並在命令提示符上顯示以下輸出 -

Presentation created successfully

空白的 PowerPoint 文件如下所示 -

Example PowerPoint

編輯現有簡報

要開啟現有簡報,請例項化 XMLSlideShow 類並將要編輯的檔案的 FileInputStream 物件作為引數傳遞給 XMLSlideShow 建構函式。

File file = new File("C://POIPPT//Examples//example1.pptx");
FileInputstream inputstream = new FileInputStream(file);
XMLSlideShow ppt = new XMLSlideShow(inputstream);

您可以使用 org.poi.xslf.usermodel 包中 XMLSlideShow 類的 createSlide() 方法將幻燈片新增到簡報中。

XSLFSlide slide1 = ppt.createSlide();

以下是開啟並向現有 PPT 新增幻燈片的完整程式 -

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import org.apache.poi.xslf.usermodel.XMLSlideShow;
import org.apache.poi.xslf.usermodel.XSLFSlide;

public class EditPresentation {
   public static void main(String ar[]) throws IOException {
      //opening an existing slide show
      File file = new File("example1.pptx");
      FileInputStream inputstream = new FileInputStream(file);
      XMLSlideShow ppt = new XMLSlideShow(inputstream);
      
      //adding slides to the slideshow
      XSLFSlide slide1 = ppt.createSlide();
      XSLFSlide slide2 = ppt.createSlide();
      
      //saving the changes 
      FileOutputStream out = new FileOutputStream(file);
      ppt.write(out);
      
      System.out.println("Presentation edited successfully");
      out.close();	
   }
}

將上述 Java 程式碼儲存為 EditPresentation.java,然後從命令提示符編譯並執行它,如下所示 -

$javac EditPresentation.java
$java EditPresentation

它將編譯並執行以生成以下輸出 -

slides successfully added

新增新幻燈片後的輸出 PPT 文件如下所示 -

Edit Example

在向 PPT 新增幻燈片後,您可以對幻燈片進行新增、執行、讀取和寫入操作。

廣告