PowerPoint C#でスライドをクローンする

場合によっては、PowerPointプレゼンテーションのスライドのクローンを作成する必要があります。クローン作成プロセスでは、元のスライドを変更せずに、別のプレゼンテーション内またはプレゼンテーション内のスライドのコピーを作成します。この記事では、PowerPointプレゼンテーションでスライドのクローンを自動化する方法を学習します。特に、この記事では、PowerPointプレゼンテーション内で、またはC#を使用してあるプレゼンテーションから別のプレゼンテーションにスライドを複製する方法について説明します。

PowerPointプレゼンテーションでスライドを複製するための.NET API

PPTXまたはPPTプレゼンテーションでスライドのクローンを作成するには、Aspose.Slides for .NETを使用します。これは、PowerPointおよびOpenOfficeプレゼンテーションを作成、変更、および変換できるプレゼンテーション操作APIです。 APIをダウンロードするか、NuGetを使用してインストールできます。

PM> Install-Package Aspose.Slides.NET

C#のPowerPointプレゼンテーション内のスライドのクローンを作成する

スライドは、指定した場所またはPowerPointプレゼンテーションの最後に複製できます。次のセクションでは、コードサンプルを使用して上記の各シナリオを示します。

プレゼンテーション終了時のクローンスライド

以下は、C#を使用してPowerPointプレゼンテーションの最後にスライドを複製する手順です。

  1. まず、Presentationクラスを使用してPowerPointプレゼンテーションをロードします。
  2. Presentation.Slidesを使用してスライドコレクションの参照をISlideCollectionオブジェクトに取得します。
  3. ISlideCollection.AddClone(ISlide)メソッドを使用して、複製するスライドをパラメーターとして指定し、目的のスライドを複製します。
  4. 最後に、Presentation.Save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。

次のコードサンプルは、PowerPointプレゼンテーションの最後にスライドを複製する方法を示しています。

// プレゼンテーションファイルを読み込む
using (Presentation pres = new Presentation("input.pptx"))
{
    // 同じプレゼンテーション内のスライドのコレクションの最後に目的のスライドのクローンを作成します
    ISlideCollection slds = pres.Slides;
    slds.AddClone(pres.Slides[0]);

    // プレゼンテーションを保存する
    pres.Save("output.pptx", SaveFormat.Pptx);

}

スライドをプレゼンテーションの特定の位置に複製する

以下は、C#を使用してPowerPointプレゼンテーションの特定の位置にスライドを複製する手順です。

  1. Presentationクラスを使用してPowerPointプレゼンテーションをロードします。
  2. Presentation.Slidesを使用してスライドコレクションの参照をISlideCollectionオブジェクトに取得します。
  3. ISlideCollection.insertClone(Int32, ISlide)メソッドを使用して、複製する宛先インデックスとスライドをパラメーターとして指定して、目的のスライドを複製します。
  4. Presentation.Save(String, SaveFormat)メソッドを使用してプレゼンテーションを保存します。

次のコードサンプルは、PowerPointプレゼンテーションの特定の位置にスライドを複製する方法を示しています。

// プレゼンテーションファイルを読み込む
using (Presentation pres = new Presentation("input.pptx"))
{
    // 同じプレゼンテーションのスライドのコレクションにアクセスする
    ISlideCollection slds = pres.Slides;
    
    // 同じプレゼンテーションで、目的のスライドを指定されたインデックスに複製します
    slds.InsertClone(2, pres.Slides[1]);

    // プレゼンテーションを保存する
    pres.Save("output.pptx", SaveFormat.Pptx);

}

C#を使用してスライドを別のプレゼンテーションに複製する

このセクションでは、あるプレゼンテーションから別のプレゼンテーションにスライドを複製する方法を学習します。次のサブセクションでは、宛先プレゼンテーションの最後または特定の位置でのスライドの複製について説明します。

別のプレゼンテーションの最後にあるクローンスライド

以下は、C#を使用して別のプレゼンテーションの最後にスライドを複製する手順です。

  1. Presentationクラスを使用してソースPowerPointプレゼンテーションをロードします。
  2. Presentationクラスを使用して宛先のPowerPointプレゼンテーションをロードします。
  3. スライドコレクションの参照を宛先プレゼンテーションからISlideCollectionオブジェクトに取得します。
  4. ISlideCollection.AddClone(ISlide)メソッドを使用して、複製するスライドをパラメーターとして指定し、目的のスライドを複製します。
  5. Presentation.Save(String, SaveFormat)メソッドを使用して宛先プレゼンテーションを保存します。

次のコードサンプルは、あるプレゼンテーションから別のプレゼンテーションにスライドを複製する方法を示しています。

// ソースプレゼンテーションファイルをロードする
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // 宛先プレゼンテーションのロード(スライドが複製される場所)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // ソースプレゼンテーションから宛先プレゼンテーションのスライドのコレクションの最後まで、目的のスライドのクローンを作成します
        ISlideCollection slds = destPres.Slides;
        slds.AddClone(srcPres.Slides[0]);

        // プレゼンテーションを保存する
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

別のプレゼンテーションでスライドを特定の位置に複製する

以下は、C#を使用して別のプレゼンテーションの特定の場所にスライドを複製する手順です。

  1. Presentationクラスを使用してソースPowerPointプレゼンテーションをロードします。
  2. Presentationクラスを使用して宛先のPowerPointプレゼンテーションをロードします。
  3. スライドコレクションの参照を宛先プレゼンテーションからISlideCollectionオブジェクトに取得します。
  4. ISlideCollection.insertClone(Int32, ISlide)メソッドを使用して、複製する宛先インデックスとスライドをパラメーターとして指定して、目的のスライドを複製します。
  5. Presentation.Save(String, SaveFormat)メソッドを使用して宛先プレゼンテーションを保存します。

次のコードサンプルは、スライドを別のPowerPointプレゼンテーションに複製する方法を示しています。

// ソースプレゼンテーションファイルをロードする
using (Presentation srcPres = new Presentation("source.pptx"))
{
    // 宛先プレゼンテーションのロード(スライドが複製される場所)
    using (Presentation destPres = new Presentation("destination.pptx"))
    {
        // ソースプレゼンテーションから宛先プレゼンテーションの指定された場所に目的のスライドのクローンを作成します
        ISlideCollection slds = destPres.Slides;
        slds.InsertClone(2, srcPres.Slides[0]);

        // プレゼンテーションを保存する
        destPres.Save("destination_out.pptx", SaveFormat.Pptx);
    }
}

無料のAPIライセンスを取得する

一時ライセンスをリクエストすることで、評価の制限なしにAspose.Slides for .NETを使用できます。

結論

この記事では、C#を使用してPowerPointプレゼンテーションでスライドのクローンを作成する方法を学習しました。この記事では、プレゼンテーション内またはプレゼンテーション間でのスライドの複製について明示的に説明しました。さらに、ドキュメントにアクセスして、APIの他の機能を調べることができます。また、フォーラムからお気軽にお問い合わせください。

関連項目

ヒント:プレゼンテーションのスライドを分割して別のファイルとして保存するために使用されるAspose FREE PowerPointSplitterを確認することをお勧めします。