テキスト分析を実行するために、PowerPointスライドからテキストを抽出する必要がある場合があります。一方、さらに処理するために、テキストを抽出してファイルまたはデータベースに保存することもできます。これに従って、この記事では、Javaを使用してPowerPointプレゼンテーションからテキストを抽出する方法について説明します。特に、特定のスライドまたはプレゼンテーション全体からテキストを抽出する方法を学習します。
PowerPoint PPTXからテキストを抽出するJavaAPI
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プレゼンテーションのスライドからテキストを抽出する手順です。
- Presentationクラスを使用してプレゼンテーションをロードします。
- SlideUtil.getAllTextBoxes()メソッドを使用して、スライドからITextFrame配列にすべてのテキストフレームを取得します。
- 各ITextFrameをループし、ITextFrame.getParagraphs()メソッドを使用してそのテキストにアクセスします。
- 段落の各IPortionからテキストを取得して印刷します。
次のコードサンプルは、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プレゼンテーション全体からテキストを抽出することもできます。この操作を実行する手順は次のとおりです。
- Presentationクラスを使用してプレゼンテーションをロードします。
- SlideUtil.getAllTextFrames()メソッドを使用して、プレゼンテーション内のすべてのテキストフレームを取得します。
- 各ITextFrameをループして、その段落にアクセスします。
- 段落の部分にアクセスして、テキストを印刷します。
次のコードサンプルは、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の詳細を調べることができます。ご不明な点がございましたら、フォーラムからお知らせください。