.NETでPDFをPowerPointに変換する

概要

この記事では、C#を使用してPDFをPowerPointに変換する方法について説明します。以下のトピックをカバーしています。

形式: PPTX

形式: PowerPoint

次のコードスニペットは、Aspose.PDF.Drawing ライブラリでも動作します。

C# PDFをPowerPointおよびPPTXに変換する

C# PDFからPowerPointおよびPPTXへの変換

Aspose.PDF for .NET はPDFからPPTXへの変換進行状況を追跡できます。

Aspose.SlidesというAPIがあり、PPT/PPTXプレゼンテーションの作成および操作機能を提供しています。このAPIは、PPT/PPTXファイルをPDF形式に変換する機能も提供しています。最近、多くのお客様からPDFをPPTX形式に変換する機能のサポートを求める要望が寄せられました。Aspose.PDF for .NET 10.3.0のリリースを開始して、PDF文書をPPTX形式に変換する機能を導入しました。この変換中に、PDFファイルの個々のページがPPTXファイルの個別のスライドに変換されます。

PDFからPPTXへの変換中、テキストはテキストとしてレンダリングされ、選択・更新が可能です。 PDFからPPTXへの変換中、テキストは選択/更新可能なテキストとしてレンダリングされます。

C#およびAspose.PDF .NETを使用したPDFからPowerPointへの簡単な変換

PDFをPPTXに変換するために、Aspose.PDF for .NETは以下のコードステップの使用を推奨します。

手順: C#でPDFをPowerPointに変換する | 手順: C#でPDFをPPTXに変換する

  1. Document クラスのインスタンスを作成します
  2. PptxSaveOptions クラスのインスタンスを作成します
  3. Document オブジェクトの Save メソッドを使用して、PDFをPPTXとして保存します
// 完全な例やデータファイルについては、https://github.com/aspose-pdf/Aspose.PDF-for-.NET をご覧ください。
// ドキュメントディレクトリへのパス。
string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// PDFドキュメントをロードします
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir + "input.pdf");
// PptxSaveOptions インスタンスをインスタンス化します
Aspose.Pdf.PptxSaveOptions pptx_save = new Aspose.Pdf.PptxSaveOptions();
// 出力をPPTX形式で保存します
doc.Save(dataDir + "PDFToPPT_out.pptx", pptx_save);

PDFをPPTXに変換する(スライドを画像として)

検索可能なPDFを選択可能なテキストではなく画像としてPPTXに変換する必要がある場合、Aspose.PDFはAspose.Pdf.PptxSaveOptionsクラスを介してそのような機能を提供します。これを実現するには、以下のコードサンプルに示すようにPptxSaveOptiosクラスのSlidesAsImagesプロパティを’true’に設定します。

// 完全な例とデータファイルについては、https://github.com/aspose-pdf/Aspose.PDF-for-.NET をご覧ください。
// ドキュメントディレクトリへのパス。
string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// PDFドキュメントをロード
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir + "input.pdf");
// PptxSaveOptionsインスタンスをインスタンス化
Aspose.Pdf.PptxSaveOptions pptx_save = new Aspose.Pdf.PptxSaveOptions();
// 出力をPPTX形式で保存
pptx_save.SlidesAsImages = true;
doc.Save(dataDir + "PDFToPPT_out_.pptx", pptx_save);

PPTX変換の進捗詳細

Aspose.PDF for .NETは、PDFからPPTXへの変換の進捗を追跡することができます。Aspose.Pdf.PptxSaveOptions クラスは CustomProgressHandler プロパティを提供しており、変換の進捗を追跡するためのカスタムメソッドを指定できます。以下のコードサンプルに示すように。

// 完全な例とデータファイルについては、https://github.com/aspose-pdf/Aspose.PDF-for-.NET をご覧ください。
// ドキュメントディレクトリへのパスです。
string dataDir = RunExamples.GetDataDir_AsposePdf_DocumentConversion();
// PDFドキュメントをロード
Aspose.Pdf.Document doc = new Aspose.Pdf.Document(dataDir + "input.pdf");
// PptxSaveOptionsインスタンスをインスタンス化
Aspose.Pdf.PptxSaveOptions pptx_save = new Aspose.Pdf.PptxSaveOptions();

//カスタム進捗ハンドラを指定
pptx_save.CustomProgressHandler = ShowProgressOnConsole;
// 出力をPPTX形式で保存
doc.Save(dataDir + "PDFToPPTWithProgressTracking_out_.pptx", pptx_save);

以下は、進行状況の変換を表示するカスタムメソッドです。

// 完全な例やデータファイルについては、https://github.com/aspose-pdf/Aspose.PDF-for-.NET をご覧ください
switch (eventInfo.EventType)
{
    case ProgressEventType.TotalProgress:
        Console.WriteLine(String.Format("{0}  - 変換進行状況 : {1}% 。", DateTime.Now.TimeOfDay, eventInfo.Value.ToString()));
        break;
    case ProgressEventType.ResultPageCreated:
        Console.WriteLine(String.Format("{0}  - 結果ページの {1} 枚目の {2} レイアウトが作成されました。", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
        break;
    case ProgressEventType.ResultPageSaved:
        Console.WriteLine(String.Format("{0}  - 結果ページ {1} 枚目の {2} がエクスポートされました。", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
        break;
    case ProgressEventType.SourcePageAnalysed:
        Console.WriteLine(String.Format("{0}  - ソースページ {1} 枚目の {2} が分析されました。", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString()));
        break;
    default:
        break;
}

関連項目

この記事では、上記と同じコードを使用して以下のトピックもカバーしています。

形式: PowerPoint

形式: PPTX