この記事では、Javaを使用してプログラムでPDFをPowerPoint PPT/PPTXに変換する方法を紹介します。

JavaでPDFをPPTPPTXに変換する

PDFは、サポートされている機能と、すべてのプラットフォームでの安定性と一貫性により、最も広く使用されているドキュメント形式の1つになっています。さまざまなシナリオで、PDF形式でドキュメントを保存または共有することを選択します。ただし、場合によっては、PDFのコンテンツをPowerPoint(PPTまたはPPTX)プレゼンテーションにエクスポートする必要があります。このような状況では、PDFからPowerPointへの変換を自動化することで手動のコピー/貼り付けを回避できます。このような場合に対処するために、次の方法を学習します。

JavaPDFからPPT/PPTXへのコンバーターAPI

Aspose.PDF for Javaは、すばらしいPDF操作機能のセットを備えた有名なPDFAPIです。 APIは、PDF操作に加えて、PDFドキュメントの各ページをPPT/PPTXプレゼンテーションのスライドに変換できる強力なPDFからPowerPointへのコンバーターも提供します。次の構成を使用して、APIのJARをダウンロードするか、Mavenベースのアプリケーションにインストールできます。

リポジトリ:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

依存:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>20.7</version>
    <classifier>jdk17</classifier>
</dependency>

Javaを使用してPDFをPowerPointPPT/PPTXに変換する

以下は、Aspose.PDFforJavaを使用してPDFドキュメントをPPTXプレゼンテーションに変換するための手順とAPIリファレンスです。

次のコードサンプルは、Javaを使用してPDFをPPTXに変換する方法を示しています。

// PDFドキュメントをロード
Document pdfDocument = new Document("document.pdf");
PptxSaveOptions pptxOptions = new PptxSaveOptions();
// PDFをPPTXに変換する
pdfDocument.save("PDF to PPT.pptx", pptxOptions);

PDFドキュメント

Javaを使用したPDFからPPTXへ

PPTXプレゼンテーション

Javaを使用したPDFからPPTへ

Javaを使用して画像としてスライドを使用してPDFをPPTXに変換する

PDFの各ページをプレゼンテーションのスライド内の画像に変換することもできます。この機能は、プレゼンテーションに選択可能なテキストが含まれないようにする場合に役立ちます。以下は、スライドに画像を含むPDFをPPTXに変換する手順です。

次のコードサンプルは、スライドを画像として持つPDFをPPTXに変換する方法を示しています。

// PDFドキュメントをロード
Document pdfDocument = new Document("document.pdf");
// PPTX保存オプションを設定する
PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.setSlidesAsImages(true);
// PDFをPPTXとして保存
pdfDocument.save("PDF to PPT.pptx", pptxOptions);

PDFからPowerPointへのPPTX変換の進捗状況を追跡する

PptxSaveOptions.setCustomProgressHandler()メソッドを使用してカスタム進行状況ハンドラーを定義することにより、PDFからPPTXへの変換の進行状況を追跡することもできます。この機能を使用して、進行状況バーまたは処理されたページ数の詳細を表示できます。次のコードサンプルは、変換の進行状況を追跡する機能を実装する方法を示しています。

PptxSaveOptions pptxOptions = new PptxSaveOptions();
pptxOptions.setCustomProgressHandler(new UnifiedSaveOptions.ConversionProgressEventHandler() {
	@Override
	public void invoke(UnifiedSaveOptions.ProgressEventHandlerInfo eventInfo) {
		// 進行状況イベントを処理する方法の例:
		System.out.println(ProgressEventType.getName(ProgressEventType.class, eventInfo.EventType) + "\t"
				+ eventInfo.Value + " from: \t" + eventInfo.MaxValue);
	}
});
// PDFをロード
Document pdfDocument = new Document("document.pdf");
// PDFをPPTXとして保存
pdfDocument.save("PDF to PPTX.pptx", pptxOptions);

出力

SourcePageAnalysed	1 from: 	10
TotalProgress	2 from: 	100
SourcePageAnalysed	2 from: 	10
TotalProgress	5 from: 	100
SourcePageAnalysed	3 from: 	10
TotalProgress	7 from: 	100
SourcePageAnalysed	4 from: 	10
TotalProgress	9 from: 	100
SourcePageAnalysed	5 from: 	10
TotalProgress	12 from: 	100
SourcePageAnalysed	6 from: 	10
TotalProgress	14 from: 	100
SourcePageAnalysed	7 from: 	10
TotalProgress	16 from: 	100
SourcePageAnalysed	8 from: 	10
TotalProgress	18 from: 	100
SourcePageAnalysed	9 from: 	10
TotalProgress	21 from: 	100
SourcePageAnalysed	10 from: 	10
TotalProgress	23 from: 	100
ResultPageCreated	1 from: 	10
TotalProgress	28 from: 	100
ResultPageCreated	2 from: 	10
TotalProgress	32 from: 	100
ResultPageCreated	3 from: 	10
TotalProgress	37 from: 	100
ResultPageCreated	4 from: 	10
TotalProgress	42 from: 	100
ResultPageCreated	5 from: 	10
TotalProgress	46 from: 	100
ResultPageCreated	6 from: 	10
TotalProgress	51 from: 	100
ResultPageCreated	7 from: 	10
TotalProgress	56 from: 	100
ResultPageCreated	8 from: 	10
TotalProgress	61 from: 	100
ResultPageCreated	9 from: 	10
TotalProgress	65 from: 	100
ResultPageCreated	10 from: 	10
TotalProgress	70 from: 	100
ResultPageSaved	1 from: 	10
TotalProgress	73 from: 	100
ResultPageSaved	2 from: 	10
TotalProgress	76 from: 	100
ResultPageSaved	3 from: 	10
TotalProgress	79 from: 	100
ResultPageSaved	4 from: 	10
TotalProgress	82 from: 	100
ResultPageSaved	5 from: 	10
TotalProgress	85 from: 	100
ResultPageSaved	6 from: 	10
TotalProgress	88 from: 	100
ResultPageSaved	7 from: 	10
TotalProgress	91 from: 	100
ResultPageSaved	8 from: 	10
TotalProgress	94 from: 	100
ResultPageSaved	9 from: 	10
TotalProgress	97 from: 	100
ResultPageSaved	10 from: 	10
TotalProgress	100 from: 	100

結論

この記事では、Javaを使用してPDFをPowerPoint PPT/PPTXにプログラムで変換する方法を学習しました。この機能は、JavaSwingまたはその他のJavaベースのアプリケーションに実装できます。 Java PDF APIについて詳しく知りたい場合は、ドキュメントを参照してください。

関連項目

ヒント:この記事で説明するプロセスのライブ実装であるAspose PDF to PowerPointConverterを試してみることをお勧めします。