MS PowerPointは、プレゼンテーション内のテキストを検索して置き換える便利な機能を提供します。ただし、ファイルのバッチに対してこの操作を実行するには、自動化が必要になる場合があります。したがって、この記事では、Javaを使用してプログラムでPowerPoint PPTX/PPTのテキストを検索および置換する方法を学習します。
PowerPointでテキストを検索して置換するJavaAPI
PPTX / PPTプレゼンテーションのテキストを検索して置き換えるために、Aspose.Slides for Javaを使用します。これは、Javaアプリケーション内からPowerPointプレゼンテーションを作成、操作、および変換するための強力なAPIです。 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 PPTXでテキストを検索して置換する
以下は、Javaを使用してPPTXプレゼンテーションのテキストを検索して置換する手順です。
- まず、Presentationクラスを使用してPowerPointプレゼンテーションをロードします。
- 次に、プレゼンテーションの各ISlideをループします。
- 各反復で、ITextFrame配列のテキストフレームを取得します。
- ITextFrameごとに、次の操作を実行します。
- 各テキストフレームのIParagraphCollectionをループします。
- 各IParagraphのIPortionCollectionにアクセスします。
- IPortion.getText()メソッドを使用して各IPortionのテキストにアクセスし、検索文字列が含まれているかどうかを確認します。
- はいの場合、検索文字列の位置を見つけて、IPortion.setText()メソッドを使用して置き換えます。
- 最後に、Presentation.save(string, SaveFormat)メソッドを使用して更新されたプレゼンテーションを保存します。
次のコードサンプルは、PowerPointプレゼンテーションでテキストを検索して置換する方法を示しています。
// プレゼンテーションを読み込む
Presentation pres = new Presentation("mytextone.pptx");
String strToFind = "search string";
String strToReplaceWith = "replace string";
// 各スライドをループする
for (ISlide slide : pres.getSlides()) {
// スライド内のすべてのテキストフレームを取得します
ITextFrame[] tf = SlideUtil.getAllTextBoxes(slide);
for (int i = 0; i < tf.length; i++)
for (IParagraph para : tf[i].getParagraphs())
for (IPortion port : para.getPortions())
// 置き換えるテキストを探す
if (port.getText().contains(strToFind)) {
// 既存のテキストを新しいテキストに置き換えます
String str = port.getText();
int idx = str.indexOf(strToFind);
String strStartText = str.substring(0, idx);
String strEndText = str.substring(idx + strToFind.length(),
str.length() - 1 - (idx + strToFind.length() - 1));
port.setText(strStartText + strToReplaceWith + strEndText);
}
}
// プレゼンテーションを保存する
pres.save("myTextOneAspose.pptx", SaveFormat.Pptx);
無料のAPIライセンスを取得する
一時ライセンスをリクエストすることで、評価の制限なしにAspose.Slides for Javaを使用できます。
結論
この記事では、Javaを使用してプログラムでPowerPointプレゼンテーションのテキストを検索および置換する方法を学習しました。 APIと提供されているコードサンプルをJavaアプリケーションに統合するだけです。さらに、ドキュメントにアクセスして、Aspose.Slides for Javaの他の機能を調べることができます。さらに、フォーラムから質問についてお知らせください。