はじめに

Aspose.Slides FOSS for .NET は現在 NuGet で利用可能です:Microsoft Office や任意のプロプライエタリ ランタイムに依存せず、C# だけで PowerPoint .pptx ファイルを作成、読み取り、編集できる、無料の MIT ライセンス ライブラリです。

このライブラリは、プログラムでプレゼンテーションファイルを生成または操作する必要がある開発者向けに設計されています。データからスライドデッキを自動化したり、アップロードされた PPTX ファイルからテキストやメタデータを抽出したり、プレゼンテーションベースのレポートパイプラインを構築したり、ASP.NET アプリケーションにプレゼンテーション作成機能を組み込んだりできます。Aspose.Slides.Foss は .NET 9.0 以降が必要なため、Windows、macOS、Linux、Docker コンテナ上で同一にデプロイされます。

主な機能

  • フルラウンドトリップ PPTX サポート: 任意の .pptx ファイルを開き、内容を変更し、ライブラリがまだ理解していない未知の XML パーツを失うことなく再保存します。
  • スライド管理: prs.Slides を使用してスライドを追加、削除、反復処理します。プレゼンテーションは new Presentation() 後に空白スライドが 1 枚で開始されます。
  • オートシェイプ、テーブル、コネクタ: slide.Shapes.AddAutoShape() でシェイプを挿入し、slide.Shapes.AddTable() で表形式データを挿入し、slide.Shapes.AddConnector() でシェイプ間のビジュアルコネクタを挿入します。
  • リッチテキスト書式設定: PortionFormat を使用して文字レベルでテキストをフォーマットします。フォントサイズ、太字、斜体、下線、ARGB カラーは FillType.SolidColorFormat で指定します。
  • 塗りつぶしタイプ: 任意のシェイプに FillType.SolidGradientPattern、または Picture の塗りつぶしを適用します。
  • ビジュアルエフェクト: shape.EffectFormat を使用して外側の影、グロー、ソフトエッジ、ぼかし、反射、内側の影を適用します。
  • 3D 書式設定: shape.ThreeDFormat を使用してベベル、カメラ、ライトリグ、マテリアル、押し出し深さを設定します。
  • スピーカーノート: NotesSlideManager.AddNotesSlide() を使用して各スライドにノートテキストを添付します。
  • スレッドコメント: 作成者メタデータとスライド位置を含むコメントを追加します。
  • 埋め込み画像: ファイルパス、バイト配列、または Stream から埋め込みます。
  • ドキュメントプロパティ: コア、アプリ、カスタムプロパティを読み書きします。

はじめに

NuGet からインストールしてください。NET 9.0 以降が必要です。

dotnet add package Aspose.Slides.Foss

シェイプを使用して最初のプレゼンテーションを作成し、保存します:

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Export;

using var prs = new Presentation();
var slide = prs.Slides[0];
var shape = slide.Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 400, 120);
shape.AddTextFrame("Hello from Aspose.Slides FOSS!");
prs.Save("hello.pptx", SaveFormat.Pptx);

Presentation は常に using ブロック内で使用してください;これにより、ブロックが終了したときにすべての内部リソースが解放されます。

テキスト書式設定例

using Aspose.Slides.Foss;
using Aspose.Slides.Foss.Drawing;

using var prs = new Presentation();
var shape = prs.Slides[0].Shapes.AddAutoShape(ShapeType.Rectangle, 50, 50, 500, 150);
var tf = shape.AddTextFrame("Bold heading in corporate blue");
var fmt = tf.Paragraphs[0].Portions[0].PortionFormat;
fmt.FontHeight = 28;
fmt.FontBold = NullableBool.True;
fmt.FillFormat.FillType = FillType.Solid;
fmt.FillFormat.SolidFillColor.Color = Color.FromArgb(255, 0, 70, 127);
prs.Save("formatted.pptx", SaveFormat.Pptx);

現在の制限

このリリースでは以下の領域はサポートされていません:

  • チャート、SmartArt、OLE オブジェクト
  • アニメーションとスライド トランジション
  • PDF、HTML、SVG、または画像形式へのエクスポート
  • ハイパーリンク、アクション設定、VBA マクロ、デジタル署名

ロード時に遭遇した未知のXMLパーツは、保存時にそのまま保持されるため、他のツールで生成されたPPTXファイルは安全に往復できます。

参照