C#とVB.NETでPowerPointをPDFに変換する方法

PowerPointプレゼンテーションは、確かに優れたスピーチ支援ツールです。しかし、ドキュメントの保存や送信といえばPDFの方が良い選択だと個人的には思います。そのため、PowerPointをPDF形式に変換することが多く、長期保存に便利です。ここでは、私が使っている変換方法を共有したいと思います。この記事は、日常的な変換でも開発プログラムでも参考にできます。お役に立てれば幸いです。
## ライブラリをインストールする
### 方法1：[NuGet](https://www.nuget.org/packages/FreeSpire.Presentation)を介してFree Spire.Presentation for .NETをインストールする
「ツール」>「NuGetパッケージマネージャ」>「パッケージマネージャコンソール」の順に選択し、次のコマンドを実行します。
PM> Install-Package FreeSpire.Presentation	

### 方法2：プログラムに手動でSpire.presentation.dllファイルを導入する
[Free Spire.Presentation for.NET](https://jp.e-iceblue.com/download/free-spire-presentation-for-net.html)をローカルにダウンロードし、解凍してインストールします。インストールが完了したら、Visual Studioを開いて新しいプロジェクトを作成し、右側のソリューションエクスプローラで「参照」を右クリックし、「参照を追加」>「参照」を選択して、インストールパスの下のBINフォルダのdllファイルを見つけ、「OK」をクリックして、プログラムに参照を追加します。

## PowerPointの全体をPDFに変換する
* Presentation クラスのオブジェクトを作成します。
* Presentation.LoadFromFile() メソッドを使用して、PowerPoint プレゼンテーションをロードします。
* Presentation.SaveToFile(filePath, FileFormat.PDF) メソッドを使用して、ファイルを PDF として保存します。
```C#:C#
using Spire.Presentation;

namespace ConvertPowerPointToPdf
{
    class Program
    {
        static void Main(string[] args)
        {
            // Presentationクラスのオブジェクトを作成する
            Presentation ppt = new Presentation();
            // PowerPointプレゼンテーションをロードする
            ppt.LoadFromFile(@"sample.pptx");

            //ファイルをPDFとして保存する
            ppt.SaveToFile("output1.pdf", FileFormat.PDF);
        }
    }
}

```
```vb:VB.NET
Imports Spire.Presentation

Namespace ConvertPowerPointToPdf
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            ' Presentationクラスのオブジェクトを作成する
            Dim ppt As Presentation = New Presentation()
            ' PowerPointプレゼンテーションをロードする
            ppt.LoadFromFile("sample.pptx")

            'ファイルをPDFとして保存する
            ppt.SaveToFile("output1.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace

```
![2023-01-31_110422.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2811193/03ffebac-14d9-7c97-3fc2-b9b6e7bf57e7.png)
## PowerPoint の特定のスライドを PDF に変換する
* Presentation クラスのオブジェクトを作成します。
* Presentation.LoadFromFile() メソッドを使用して PowerPoint プレゼンテーションをロードします。
* Presentation.Slides[slideIndex] プロパティを使用して、特定のスライドを取得します。
* ISlide.SaveToFile(filePath, FileFormat.PDF) メソッドを使用して、スライドを PDF として保存します。
```C#:C#
using Spire.Presentation;

namespace ConvertSlidesToPdf
{
    class Program
    {
        static void Main(string[] args)
        {
            //Presentationクラスのオブジェクトを作成する
            Presentation ppt = new Presentation();
            // PowerPointプレゼンテーションをロードする
            ppt.LoadFromFile(@"sample.pptx");

            // 2枚目のスライドを取得する
            ISlide slide = ppt.Slides[1];

            //スライドをPDFとして保存する
            slide.SaveToFile("output2.pdf", FileFormat.PDF);
        }
    }
}

```
```vb:VB.NET
Imports Spire.Presentation

Namespace ConvertSlidesToPdf
    Friend Class Program
        Private Shared Sub Main(ByVal args As String())
            'Presentationクラスのオブジェクトを作成する
            Dim ppt As Presentation = New Presentation()
            ' PowerPointプレゼンテーションをロードする

            ppt.LoadFromFile("sample.pptx")

            '2枚目のスライドを取得する
            Dim slide As ISlide = ppt.Slides(1)

            'スライドをPDFとして保存する
            slide.SaveToFile("output2.pdf", FileFormat.PDF)
        End Sub
    End Class
End Namespace
```
![110422.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2811193/7e47c739-ceda-7b98-2517-8ae6259e726c.png)