.NET で PowerPoint スライドを PNG に変換
概要
この記事では、C# を使用して PowerPoint プレゼンテーションを PNG 形式に変換する方法を説明します。以下のトピックをカバーしています。
- C# で PowerPoint を PNG に変換
- C# で PPT を PNG に変換
- C# で PPTX を PNG に変換
- C# で ODP を PNG に変換
- C# で PowerPoint スライドを画像に変換
.NET での PowerPoint から PNG への変換
C# のサンプルコードで PowerPoint を PNG に変換する方法については、以下のセクション PowerPoint を PNG に変換 を参照してください。コードは PPT、PPTX、ODP など複数の形式を Presentation オブジェクトで読み込み、スライドのサムネイルを PNG 形式で保存できます。他の類似した画像形式への変換(JPG、BMP、TIFF、SVG)については、以下の記事で解説しています。
PowerPoint を PNG に変換することについて
PNG(Portable Network Graphics)形式は JPEG(Joint Photographic Experts Group)ほど一般的ではありませんが、依然として非常に広く利用されています。
使用例: 複雑な画像でサイズが問題とならない場合、PNG は JPEG よりも適した画像形式です。
Tip
Aspose の無料 PowerPoint から PNG へのコンバータ をチェックしてください: PPTX to PNG および PPT to PNG。これらは本ページで説明したプロセスの実装例です。PowerPoint を PNG に変換
以下の手順を実行します:
- Presentation クラスのインスタンスを作成します。
- ISlide インターフェイスを通じて、Presentation.Slides コレクションからスライド オブジェクトを取得します。
- 各スライドのサムネイルを取得するために、ISlide.GetImage メソッドを使用します。
- スライドのサムネイルを PNG 形式で保存するために、IPresentation.Save(String, SaveFormat, ISaveOptions メソッドを使用します。
この C# コードは、PowerPoint プレゼンテーションを PNG に変換する方法を示しています。Presentation オブジェクトは PPT、PPTX、ODP などを読み込み、プレゼンテーション内の各スライドを PNG 形式または他の画像形式に変換します。
using (Presentation pres = new Presentation("pres.pptx"))
{
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage())
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
カスタム寸法で PowerPoint を PNG に変換
特定のスケールで PNG ファイルを取得したい場合は、desiredX と desiredY の値を設定します。これらは生成されるサムネイルの寸法を決定します。
以下の C# コードは上記の操作を示しています:
using (Presentation pres = new Presentation("pres.pptx"))
{
float scaleX = 2f;
float scaleY = 2f;
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage(scaleX, scaleY))
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
カスタムサイズで PowerPoint を PNG に変換
特定のサイズで PNG ファイルを取得したい場合は、imageSize に対して好みの width と height 引数を渡すことができます。
以下のコードは、画像サイズを指定しながら PowerPoint を PNG に変換する方法を示しています:
using (Presentation pres = new Presentation("pres.pptx"))
{
Size size = new Size(960, 720);
for (var index = 0; index < pres.Slides.Count; index++)
{
ISlide slide = pres.Slides[index];
using (IImage image = slide.GetImage(size))
{
image.Save($"slide_{index}.png", ImageFormat.Png);
}
}
}
FAQ
特定のシェイプ(例: グラフや画像)だけをエクスポートしたい場合、スライド全体ではなくシェイプだけを PNG に出力できますか?
Aspose.Slides は 個別シェイプのサムネイル生成 をサポートしており、シェイプを PNG 画像としてレンダリングできます。
サーバー上で並列変換はサポートされていますか?
はい、ただしスレッド間で単一の Presentation インスタンスを共有しないでください。スレッドまたはプロセスごとに別々のインスタンスを使用します。(共有しない)
PNG エクスポート時の評価版の制限は何ですか?
評価モードでは出力画像に透かしが追加され、ライセンスが適用されるまで その他の制限 が適用されます。