從 PowerPoint Java 中提取文本

您可能經常需要從 PowerPoint 幻燈片中提取文本以執行文本分析。另一方面,您可能希望提取文本並將其保存在文件或數據庫中以供進一步處理。據此,本文介紹瞭如何使用 Java 從 PowerPoint 演示文稿中提取文本。特別是,您將學習如何從特定幻燈片或整個演示文稿中提取文本。

從 PowerPoint PPTX 中提取文本的 Java API

為了操作 PowerPoint 演示文稿,Aspose 提供了 Aspose.Slides for Java。所述 API 旨在在 Java 應用程序中實現 PowerPoint 自動化功能。它還提供了一些從 PPT/PPTX 演示文稿中提取文本的簡單方法。您可以 下載 API 或使用以下 Maven 配置安裝它。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.7</version>
    <classifier>jdk16</classifier>
</dependency>

從 Java 中的 PowerPoint 幻燈片中提取文本

以下是使用 Java 從 PowerPoint 演示文稿的幻燈片中提取文本的步驟。

以下代碼示例顯示如何從 PowerPoint 幻燈片中提取文本。

//實例化表示 PPTX 文件的 PresentationEx 類
Presentation pptxPresentation = new Presentation("presentation.pptx");

//從第一張幻燈片中獲取 ITextFrame 對像數組
ITextFrame[] textFramesSlideOne = SlideUtil.getAllTextBoxes(pptxPresentation.getSlides().get_Item(1));

//遍歷 TextFrames 數組
for (int i = 0; i < textFramesSlideOne.length; i++)
{
    //循環遍歷當前 TextFrame 中的段落
   for (IParagraph para : textFramesSlideOne[i].getParagraphs())
    {
        //遍歷當前段落中的部分
       for (IPortion port : para.getPortions())
        {
            //在當前部分顯示文本
            System.out.println(port.getText());

            //顯示文本的字體高度
            System.out.println(port.getPortionFormat().getFontHeight());

            //顯示文本的字體名稱
            System.out.println(port.getPortionFormat().getLatinFont().getFontName());
        }
    }
}

從整個 PowerPoint 演示文稿中提取文本

您還可以從整個 PowerPoint 演示文稿中提取文本。以下是執行此操作的步驟。

以下代碼示例顯示如何從 PowerPoint 演示文稿中提取文本。

//實例化表示 PPTX 文件的 PresentationEx 類
Presentation pptxPresentation = new Presentation("presentation.pptx");

//從第一張幻燈片中獲取 ITextFrame 對像數組
ITextFrame[] textFrames = SlideUtil.getAllTextFrames(pptxPresentation, true);

//遍歷 TextFrames 數組
for (int i = 0; i < textFrames.length; i++)
{
    //循環遍歷當前 TextFrame 中的段落
   for (IParagraph para : textFrames[i].getParagraphs())
    {
        //遍歷當前段落中的部分
       for (IPortion port : para.getPortions())
        {
            //在當前部分顯示文本
            System.out.println(port.getText());
        }
    }
}

獲取免費的 API 許可證

如果您想不受評估限制地使用 API,您可以獲得免費的臨時許可證

在線試用

您也可以嘗試使用 Aspose.Slides 開發的免費在線演示文稿解析器。

結論

在本文中,您學習瞭如何使用 Java 從 PowerPoint 演示文稿中提取文本。代碼示例展示瞭如何從特定幻燈片或整個演示文稿中提取文本。您可以使用 文檔 探索更多關於 Aspose.Slides for Java 的信息。如果您有任何疑問,請通過我們的 論壇 告知我們。

也可以看看