JavaはPowerPointでSmartArt図形のテキストコンテンツを抽出
前回の記事では、PowerPointにSmartArt図形を追加する方法を紹介しましたが、本日は、JavaプログラムでSmartArt図形のテキストコンテンツを抽出する方法を紹介します。 (ライブラリ: Free Spire.Presentation for Java)
JARパッケージのインポート
方法1: Free Spire.Presentation for Javaをダウンロードして解凍したら、libフォルダーのSpire.Presentation.jarパッケージを依存関係としてJavaアプリケーションにインポートします。
方法2: Mavenリポジトリから直接にJARパッケージをインストールしたら、pom.xmlファイルを次のように構成します。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url>http://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.presentation.free</artifactId>
<version>3.9.0</version>
</dependency>
</dependencies>
Javaサンプルコード
import com.spire.presentation.Presentation;
import com.spire.presentation.diagrams.ISmartArt;
import java.io.*;
public class extractTextFromSmartArt {
public static void main(String[] args) throws Exception {
Presentation presentation = new Presentation();
presentation.loadFromFile("SmartArt.pptx");
//新規txtドキュメントを作成
String result = "extractTextFromSmartArt.txt";
File file=new File(result);
if(file.exists()){
file.delete();
}
file.createNewFile();
FileWriter fw =new FileWriter(file,true);
BufferedWriter bw =new BufferedWriter(fw);
bw.write("下記はSmartArtから抽出されたテキストです。" + "\r\n");
//すべてのスライドをループし、SmartArt図形を取得してください
for (int i = 0; i < presentation.getSlides().getCount(); i++)
{
for (int j = 0; j < presentation.getSlides().get(i).getShapes().getCount(); j++)
{
if (presentation.getSlides().get(i).getShapes().get(j) instanceof ISmartArt)
{
ISmartArt smartArt = (ISmartArt)presentation.getSlides().get(i).getShapes().get(j);
//SmartArtにあったテキストを抽出します
for (int k = 0; k < smartArt.getNodes().getCount(); k++)
{
bw.write(smartArt.getNodes().get(k).getTextFrame().getText() + "\r\n");
}
}
}
}
bw.flush();
bw.close();
fw.close();
}
}
Author And Source
この問題について(JavaはPowerPointでSmartArt図形のテキストコンテンツを抽出), 我々は、より多くの情報をここで見つけました https://qiita.com/iceblue/items/3a9450ca3c7eeacf9dc5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .