溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Java中怎么讀取PPT文本和圖片

發(fā)布時間:2021-08-13 14:09:08 來源:億速云 閱讀:229 作者:Leah 欄目:編程語言

本篇文章為大家展示了Java中怎么讀取PPT文本和圖片,內(nèi)容簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細介紹希望你能有所收獲。

Jar文件獲取及導(dǎo)入

方法1:官網(wǎng)下載jar文件包。下載后,解壓文件,并在java程序中導(dǎo)入lib文件夾下的Spire.Presentation.jar文件。

方法2:可通過maven倉庫導(dǎo)入到maven項目。

Java代碼示例

測試文檔:

【示例1】讀取PPT中的文本

import com.spire.presentation.IAutoShape;import com.spire.presentation.ISlide;import com.spire.presentation.ParagraphEx;import com.spire.presentation.Presentation;import java.io.FileWriter;public class ExtractText { public static void main(String[]args) throws Exception{  //加載測試文檔  Presentation ppt = new Presentation();  ppt.loadFromFile("test.pptx");  StringBuilder buffer = new StringBuilder();  //遍歷文檔中的幻燈片,提取文本  for (Object slide : ppt.getSlides()) {   for (Object shape : ((ISlide) slide).getShapes()) {    if (shape instanceof IAutoShape) {     for (Object tp : ((IAutoShape) shape).getTextFrame().getParagraphs()) {      buffer.append(((ParagraphEx) tp).getText());     }    }   }  }  //保存到文本文件  FileWriter writer = new FileWriter("ExtractText.txt");  writer.write(buffer.toString());  writer.flush();  writer.close(); }}

文本讀取結(jié)果:

【示例2】讀取PPT中的所有圖片

import com.spire.presentation.Presentation;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.File;public class ExtractAllImgs { public static void main(String[] args) throws Exception {  //加載文檔  Presentation ppt = new Presentation();  ppt.loadFromFile("test.pptx");  //提取文檔中的所有圖片  for (int i = 0; i < ppt.getImages().getCount(); i++) {   BufferedImage image = ppt.getImages().get(i).getImage();   ImageIO.write(image, "PNG", new File(String.format("AllImage-%1$s.png", i)));  } }}

【示例3】讀取指定幻燈片中的圖片

import com.spire.presentation.*;import javax.imageio.ImageIO;import java.awt.image.BufferedImage;import java.io.File;public class ExtractImgsInSpecifiedSlide { public static void main(String[]args) throws Exception{  //加載文檔  Presentation ppt = new Presentation();  ppt.loadFromFile("test.pptx");  //獲取第2張幻燈片  ISlide slide = ppt.getSlides().get(1);  //提取圖片  for(int i = 0; i< slide.getShapes().getCount(); i++)  {   IShape shape = slide.getShapes().get(i);   if(shape instanceof SlidePicture)   {    SlidePicture pic = (SlidePicture) shape;    BufferedImage image = pic.getPictureFill().getPicture().getEmbedImage().getImage();    ImageIO.write(image, "PNG", new File(String.format("extractImageinslide-%1$s.png", i)));   }   if(shape instanceof PictureShape)   {    PictureShape ps = (PictureShape) shape;    BufferedImage image = ps.getEmbedImage().getImage();    ImageIO.write(image, "PNG", new File(String.format("extractImageinslide-%1$s.png", i)));   }  } }}

上述內(nèi)容就是Java中怎么讀取PPT文本和圖片,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI