PowerPointをC#でPNGに変換
概要
この記事では、C#を使用してPowerPointプレゼンテーションをPNG形式に変換する方法を説明します。以下のトピックをカバーしています。
C# PowerPointをPNGに変換
PowerPointをPNGに変換するためのC#サンプルコードについては、以下のセクション、つまりC#でPowerPointをPNGに変換を参照してください。このコードは、PresentationオブジェクトにPPT、PPTX、ODPなどの形式をロードし、スライドのサムネイルをPNG形式で保存します。他のPowerPointから画像への変換については、JPG、BMP、TIFF、SVGなど、これらの記事で説明しています。
PowerPointをPNGに変換するについて
PNG(Portable Network Graphics)形式はJPEG(Joint Photographic Experts Group)ほど一般的ではありませんが、それでも非常に人気です。
使用例: 複雑な画像があり、サイズが問題でない場合は、PNGはJPEGよりも優れた画像形式です。
ヒント
Asposeの無料PowerPoint to PNGコンバーターをチェックしたいかもしれません: PPTX to PNGおよびPPT to PNG。これらは、このページで説明されているプロセスのライブ実装です。PowerPointをPNGに変換する
これらの手順を実行します。
- Presentationクラスをインスタンス化します。
- ISlideインターフェイスの下にあるPresentation.Slidesコレクションからスライドオブジェクトを取得します。
- ISlide.GetImageメソッドを使用して、各スライドのサムネイルを取得します。
- IPresentation.Save(String, SaveFormat, ISaveOptionsメソッドを使用して、スライドのサムネイルをPNG形式で保存します。
この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);
}
}
}