Apache POI PPT - Manajemen Slide

Setelah menyelesaikan bab ini, Anda akan dapat menghapus, menyusun ulang, dan melakukan operasi baca dan tulis pada slide.

Mengubah Slide

Kita dapat mengubah ukuran halaman slide menggunakan setPageSize() metode dari XMLSlideShow kelas.

Awalnya buat presentasi seperti yang ditunjukkan di bawah ini -

File file = new File("C://POIPPT//Examples// TitleAndContentLayout.pptx");

//create presentation
XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(file));

Dapatkan ukuran slide saat ini menggunakan getPageSize() metode dari XMLSlideShow kelas.

java.awt.Dimension pgsize = ppt.getPageSize();

Atur ukuran halaman menggunakan setPageSize() metode.

ppt.setPageSize(new java.awt.Dimension(1024, 768));

Program lengkap untuk mengubah ukuran slide diberikan di bawah ini -

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

public class ChangingSlide {
   
   public static void main(String args[]) throws IOException {

      //create file object
      File file = new File("TitleAndContentLayout.pptx");
	 
      //create presentation
      XMLSlideShow ppt = new XMLSlideShow();
      
      //getting the current page size
      java.awt.Dimension pgsize = ppt.getPageSize();
      int pgw = pgsize.width; //slide width in points
      int pgh = pgsize.height; //slide height in points
      
      System.out.println("current page size of the PPT is:");
      System.out.println("width :" + pgw);
      System.out.println("height :" + pgh);
      
      //set new page size
      ppt.setPageSize(new java.awt.Dimension(2048,1536));
      
      //creating file object
      FileOutputStream out = new FileOutputStream(file);
      
      //saving the changes to a file
      ppt.write(out);
      System.out.println("slide size changed to given dimentions ");
      out.close();	
   }
}

Simpan kode Java di atas sebagai ChangingSlide.java, lalu kompilasi dan jalankan dari command prompt sebagai berikut -

$javac ChangingSlide.java
$java ChangingSlide

Ini akan mengkompilasi dan mengeksekusi untuk menghasilkan output berikut.

current page size of the presentation is : 
width :720
height :540
slide size changed to given dimensions

Diberikan di bawah ini adalah snapshot dari presentasi sebelum mengubah ukuran slide -

Slide muncul sebagai berikut setelah mengubah ukurannya -

Menyusun Ulang Slide

Anda dapat mengatur urutan slide menggunakan setSlideOrder()metode. Diberikan di bawah ini adalah prosedur untuk mengatur urutan slide.

Buka dokumen PPT yang ada seperti yang ditunjukkan di bawah ini -

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

Dapatkan slide menggunakan getSlides() metode seperti yang ditunjukkan di bawah ini -

XSLFSlide[] slides = ppt.getSlides();

Pilih slide dari larik slide, dan ubah urutannya menggunakan setSlideOrder() metode seperti yang ditunjukkan di bawah ini -

//selecting the fourth slide
XSLFSlide selectesdslide = slides[4];

//bringing it to the top
ppt.setSlideOrder(selectesdslide, 1);

Diberikan di bawah ini adalah program lengkap untuk menyusun ulang slide dalam presentasi -

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 ReorderSlide {	
   
   public static void main(String args[]) throws IOException {
   
      //opening an existing presentation
      File file = new File("example1.pptx");
      XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(file));
      
      //get the slides 
      XSLFSlide[] slides = ppt.getSlides();    
      
      //selecting the fourth slide
      XSLFSlide selectesdslide = slides[13];
      
      //bringing it to the top
      ppt.setSlideOrder(selectesdslide, 0);
      
      //creating an file object 
      FileOutputStream out = new FileOutputStream(file);
	  
      //saving the changes to a file
      ppt.write(out);
      out.close();	
   }
}

Simpan kode Java di atas sebagai ReorderSlide.java, lalu kompilasi dan jalankan dari command prompt sebagai berikut -

$javac ReorderSlide.java
$java ReorderSlide

Ini akan mengkompilasi dan mengeksekusi untuk menghasilkan output berikut.

Reordering of the slides is done

Diberikan di bawah ini adalah snapshot dari presentasi sebelum menyusun ulang slide -

Setelah menyusun ulang slide, presentasi muncul sebagai berikut. Di sini kami telah memilih slide dengan gambar dan memindahkannya ke atas.

Menghapus Slide

Anda dapat menghapus slide menggunakan removeSlide()metode. Ikuti langkah-langkah yang diberikan di bawah ini untuk menghapus slide.

Buka presentasi yang sudah ada menggunakan XMLSlideShow kelas seperti yang ditunjukkan di bawah ini -

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

Hapus slide yang diperlukan menggunakan removeSlide()metode. Metode ini menerima parameter integer. Teruskan indeks slide yang akan dihapus ke metode ini.

ppt.removeSlide(1);

Diberikan di bawah ini adalah program untuk menghapus slide dari presentasi -

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

import org.apache.poi.xslf.usermodel.XMLSlideShow;

public class Deleteslide { 
   
   public static void main(String args[]) throws IOException {
   
      //Opening an existing slide
      File file = new File("image.pptx");
      XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(file));
      
      //deleting a slide
      ppt.removeSlide(1);
      
      //creating a file object
      FileOutputStream out = new FileOutputStream(file);
      
      //Saving the changes to the presentation
      ppt.write(out);
      out.close();	
   }
}

Simpan kode Java di atas sebagai Deleteslide.java, lalu kompilasi dan jalankan dari command prompt sebagai berikut -

$javac Deleteslide.java
$java Deleteslide

Ini akan mengkompilasi dan mengeksekusi untuk menghasilkan output berikut -

reordering of the slides is done

Cuplikan di bawah ini adalah presentasi sebelum menghapus slide -

Setelah menghapus slide, presentasi muncul sebagai berikut -