Apache POI PPT - Reading Shapes

Bạn có thể đếm số hình dạng được sử dụng trong bản trình bày bằng phương pháp getShapeName() sau đó XSLFShapelớp học. Dưới đây là chương trình để đọc các hình dạng từ một bản trình bày -

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.XSLFShape;
import org.apache.poi.xslf.usermodel.XSLFSlide;

public class ReadingShapes {
   
   public static void main(String args[]) throws IOException {
      
      //creating a slideshow 
      File file = new File("shapes.pptx");
      XMLSlideShow ppt = new XMLSlideShow(new FileInputStream(file));
      
      //get slides 
      XSLFSlide[] slide = ppt.getSlides();
      
      //getting the shapes in the presentation
      System.out.println("Shapes in the presentation:");
      for (int i = 0; i < slide.length; i++){
         
         XSLFShape[] sh = slide[i].getShapes();
         for (int j = 0; j < sh.length; j++){
            
            //name of the shape
            System.out.println(sh[j].getShapeName());
         }
      }
      
      FileOutputStream out = new FileOutputStream(file);
      ppt.write(out);
      out.close();	
   }
}

Lưu mã Java ở trên dưới dạng ReadingShapes.java, sau đó biên dịch và thực thi nó từ dấu nhắc lệnh như sau:

$javac ReadingShapes.java
$java ReadingShapes

Nó sẽ biên dịch và thực thi để tạo ra kết quả sau.

Shapes in the presentation: 
Rectangle 1
Oval 1
Isosceles Triangle 1

Trang chiếu mới được thêm vào với các hình dạng khác nhau sẽ xuất hiện như sau: