マイクロソフト株式会社によって開発された PowerPoint プレゼンテーションは、視覚的に魅力的でインタラクティブなコンテンツを作成するために使用される多目的なファイル形式です。テキストや画像などの豊富な機能と複数の要素を含んでおり、ビジネスの紹介や学術的なスピーチなど、さまざまなシナリオで強力なツールとなっています。PowerPoint のテキストを編集や操作する必要がある場合、プログラムでテキストを抽出し、新しいファイルに保存することは良い選択です。この記事では、Spire.Presentation for Java を使用して PowerPoint からテキストを抽出する方法を示します。
Spire.Presentation for Java をインストールします
まず、Spire.Presentation for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.presentation</artifactId>
<version>8.7.3</version>
</dependency>
</dependencies>
PowerPoint プレゼンテーションからテキストを抽出する
Spire.Presentation for Java では、ParagraphEx.getText() メソッドを使用して、すべてのスライドをループし、各スライドの段落からテキストを抽出することができます。詳細な手順は次のとおりです。
- Presentation クラスのオブジェクトを作成します。
- Presentation.loadFromFile() メソッドを使用して PowerPoint プレゼンテーションをロードします。
- StringBuilder クラスのオブジェクトを作成します。
- 各スライドの形状と各形状の段落をループします。
- ParagraphEx.getText() メソッドを呼び出してすべてのスライドからテキストを抽出し、抽出したテキストを StringBuilder オブジェクトに追加します。
- FileWriter クラスのオブジェクトを作成し、抽出したテキストを新しい .txt ファイルに書き込みます。
- Java
import com.spire.presentation.*;
import java.io.*;
public class ExtractText {
public static void main(String[] args) throws Exception {
//Presentationクラスのオブジェクトを作成する
Presentation presentation = new Presentation();
//PowerPointプレゼンテーションをロードする
presentation.loadFromFile("sample.pptx");
//StringBuilderオブジェクトを作成する
StringBuilder buffer = new StringBuilder();
//各スライドをループしてテキストを抽出する
for (Object slide : presentation.getSlides()) {
for (Object shape : ((ISlide) slide).getShapes()) {
if (shape instanceof IAutoShape) {
for (Object tp : ((IAutoShape) shape).getTextFrame().getParagraphs()) {
buffer.append(((ParagraphEx) tp).getText()+"\n");
}
}
}
}
//抽出したテキストを新しい.txtファイルに書き込む
FileWriter writer = new FileWriter("output/ExtractAllText.txt");
writer.write(buffer.toString());
writer.flush();
writer.close();
presentation.dispose();
}
}
特定のスライドからテキストを抽出する
Spire.Presentation for Java では、特定のスライドからテキストを抽出することもサポートしています。テキストを抽出する前に、Presentation.getSlides().get() メソッドを呼び出して、必要なスライドを取得してください。以下に詳細な手順を示します。
- Presentation クラスのオブジェクトを作成します。
- Presentation.loadFromFile() メソッドを使用して PowerPoint プレゼンテーションをロードします。
- StringBuilder クラスのオブジェクトを作成します。
- Presentation.getSlides().get() メソッドを呼び出して、最初のスライドを取得します。
- スライドの各形状と各形状の段落をループします。
- ParagraphEx.getText() メソッドを呼び出して最初のスライドからテキストを抽出し、抽出したテキストを StringBuilder オブジェクトに追加します。
- FileWriter クラスのオブジェクトを作成し、抽出したテキストを新しい .txt ファイルに書き込みます。
- Java
import com.spire.presentation.*;
import java.io.*;
public class ExtractText {
public static void main(String[] args) throws Exception {
//Presentationクラスのオブジェクトを作成する
Presentation presentation = new Presentation();
//PowerPointプレゼンテーションをロードする
presentation.loadFromFile("sample.pptx");
//StringBuilderオブジェクトを作成する
StringBuilder buffer = new StringBuilder();
//最初のスライドを取得する
ISlide Slide = presentation.getSlides().get(0);
//各形状の段落をループしてテキストを抽出する
for (Object shape : Slide.getShapes()) {
if (shape instanceof IAutoShape) {
for (Object tp : ((IAutoShape) shape).getTextFrame().getParagraphs()) {
buffer.append(((ParagraphEx) tp).getText()+"\n");
}
}
}
//抽出したテキストを新しい.txtファイルに書き込む
FileWriter writer = new FileWriter("output/ExtractSlideText.txt");
writer.write(buffer.toString());
writer.flush();
writer.close();
presentation.dispose();
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。