最も一般的で広く使用されているプレゼンテーション ファイル形式は、PPT、PPTX、ODP です。有名な Microsoft PowerPoint, OpenOffice Impress、Apple Keynote はこれらの形式をサポートしており、私たちは通常、素晴らしいプレゼンテーションを作成するためにこれらの形式を使用します。開発者は、アプリケーション内のプレゼンテーションをプログラムで編集できます。この記事では、プレゼンテーション編集用の .NET API を使用して C# で PPT/PPTX プレゼンテーションを編集する方法について説明します。
この記事で簡単に説明するトピックは次のとおりです。
プレゼンテーションの編集と自動化のための .NET API
ここで、以下の C# の例では GroupDocs.Editor for .NET を使用します。これはプレゼンテーション編集 API であり、開発者は編集されたプレゼンテーションを PPT、PPTX、PDF などの他の形式でロード、編集、保存できます。プレゼンテーション形式に加えて、API はワードプロセッサ ドキュメント、スプレッドシート、HTML、XML、JSON、TXT、TSV、および CSV 形式の編集をサポートします。
DLL または MSI インストーラーを ダウンロード セクション からダウンロードするか、NuGet 経由で .NET アプリケーションに API をインストールします。
PM> Install-Package GroupDocs.Editor
C# で PPTX/PPTX プレゼンテーションを編集する
API を設定した直後から、すぐにプレゼンテーション スライドの編集に進むことができます。次の手順では、PPT/PPTX およびその他のサポートされている形式のプレゼンテーションを編集できます。
- プレゼンテーションをロードします。
- 利用可能なオプションを使用して編集します。
- 編集したプレゼンテーションを保存します。
PPT/PPTX プレゼンテーションをロードする
まず、プレゼンテーションが保護されている場合は、プレゼンテーション ファイルのパスとパスワードを指定してプレゼンテーションをロードします。
// Load Presentation
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
// Load Presentation
Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
loadOptions.Password = "P@$$w0Rd";
}
PPT/PPTX プレゼンテーション スライドを編集する
ロード後、要件に応じてロードされたプレゼンテーションを編集できます。ここでは、以下の C# コードを使用して、PPTX プレゼンテーション内のすべての単語「ドキュメント」を「プレゼンテーション」に置き換えます。
// Edit Presentation
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
Options.PresentationEditOptions editOptions = new PresentationEditOptions();
editOptions.SlideNumber = 0; // 1st slide
editOptions.ShowHiddenSlides = true;
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
string originalContent = beforeEdit.GetContent();
List<IHtmlResource> allResources = beforeEdit.AllResources;
string editedContent = originalContent.Replace("documents", "presentation");
}
}
編集した PowerPoint プレゼンテーションをオプションを使用して保存する
最後に、編集したプレゼンテーションのコンテンツを保存するときに、さらにさまざまなオプションを設定できます。これらのオプションには次のものが含まれます。パスワードの設定、出力形式の設定。以下のコードで上記のオプションを設定し、編集したプレゼンテーションをパスワードで保護された PPTX ファイルとして保存します。
// Save Presentation
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
saveOptions.Password = "new_pa$$word";
using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
{
editor.Save(afterEdit, outputStream, saveOptions);
}
}
完全なコード
便宜上、上で説明した完全な C# 例をここに示します。この例では、PowerPoint プレゼンテーションを編集して、PPTX 形式で保存します。
// GroupDocs プレゼンテーション編集および自動化 API を使用して C# で PPT/PPTX プレゼンテーションを編集する
using (FileStream fs = File.OpenRead("path/presentation.pptx"))
{
// プレゼンテーションをロードする
Options.PresentationLoadOptions loadOptions = new PresentationLoadOptions();
loadOptions.Password = "P@$$w0Rd";
// プレゼンテーションの編集
using (Editor editor = new Editor(delegate { return fs; }, delegate { return loadOptions; }))
{
Options.PresentationEditOptions editOptions = new PresentationEditOptions();
editOptions.SlideNumber = 0; // 1st slide
editOptions.ShowHiddenSlides = true;
using (EditableDocument beforeEdit = editor.Edit(editOptions))
{
string originalContent = beforeEdit.GetContent();
List<IHtmlResource> allResources = beforeEdit.AllResources;
string editedContent = originalContent.Replace("documents", "presentation");
// プレゼンテーションの保存
using (EditableDocument afterEdit = EditableDocument.FromMarkup(editedContent, allResources))
{
Options.PresentationSaveOptions saveOptions = new PresentationSaveOptions(PresentationFormats.Pptm);
saveOptions.Password = "new_pa$$word";
using (FileStream outputStream = File.Create("path/edited-presentation.pptx"))
{
editor.Save(afterEdit, outputStream, saveOptions);
}
}
}
}
}
以下は、上記のコードを使用してすべての出現箇所が置き換えられた出力プレゼンテーションです。
結論
結論として、.NET アプリケーション用のプレゼンテーション編集 API を使用して、C# でプレゼンテーション スライドを編集する方法について説明しました。 WYSIWYG エディターで API を使用して、プレゼンテーションを視覚的に編集できます。その後、独自のプレゼンテーション エディターの構築に進むことができます。同様に、.NET アプリケーション内に編集機能を統合することもできます。
詳細、オプション、例については、ドキュメント および GitHub リポジトリを参照してください。さらに質問がある場合は、フォーラム のサポートにお問い合わせください。