チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル».NET»Spire.Presentation for .NET»文書操作»C# を使用して PowerPoint ドキュメントのすべてのタイトルを取得する方法
2022-04-18

C# を使用して PowerPoint ドキュメントのすべてのタイトルを取得する方法

PowerPoint ドキュメントの中で、タイトルは不可欠な部分であり、適当にタイトルを使て、長い PowerPoint ドキュメントがちゃんと整理されたように見やすくなり、解説している人が次に大体何の内容を出すのかを聴衆たちにヒントになります。

操作を始める前に、先ずは一つの概念、つまりプレースホルダーを理解すべきです。PowerPoint ドキュメントには複数の図形が存在できることが分かっているでしょう、そして各図形には独自のプレースホルダー(placeholder)があります、各図形のプレースホルダのタイプもそれぞれ違います。例えば、テーブルのプレースホルダのタイプは table で、画像のプレースホルダのタイプは picture で、メディアファイルのプレースホルダのタイプは Media で、そしてタイトルのプレースホルダのタイプは title です。今回の記事で図形のプレースホルダのタイプを判断して、ドキュメント内のタイトルを取得する方法を紹介します。

PowerPoint ドキュメントにはさまざまな種類のタイトルがあります。PowerPoint ドキュメントを作成してスライドを追加すると、中央タイトル(Centered title)、サブタイトル(Subtitle)、および他のスライドのタイトル(title)がスライドの中央に表示されます。以下の画像で直感的に見ましょう:

C# を使用して PowerPoint ドキュメントのすべてのタイトルを取得する方法

それからこの PowerPoint ドキュメントに何か内容を追加します:

C# を使用して PowerPoint ドキュメントのすべてのタイトルを取得する方法

必要なコンポーネント:

Visual Studio および無料版の PowerPoint コンポーネント、Free Spire.Presentation for .NET コンポーネントがインストール完了したら、Visual Studio を開き、新しいプロジェクトを作成して Spire.Presentation.dll を参照に追加します。すべてのコードは以下になります:

  • C#
using System;
using System.Collections.Generic;
using Spire.Presentation;

namespace GetPresentationTitle
{
    class Program
    {
        static void Main(string[] args)
        {
            // PowerPointのインスタントを作成してPowerPointドキュメントをロードする
            Presentation ppt = new Presentation();
            ppt.LoadFromFile("test.pptx");
            //listのインスタントを作成する
            List shapelist = new List();
            // PowerPointドキュメントのすべてのスライドと各スライドのすべての図形をトラバースし、プレースホルダーの種類がタイトルである図形をリストに追加する
            foreach (ISlide slide in ppt.Slides)
            {
                foreach (IShape shape in slide.Shapes)
                {
                    if (shape.Placeholder != null)
                    {
                        switch (shape.Placeholder.Type)
                        {
                            case PlaceholderType.Title:
                                shapelist.Add(shape);
                                break;
                            case PlaceholderType.CenteredTitle:
                                shapelist.Add(shape);
                                break;
                            case PlaceholderType.Subtitle:
                                shapelist.Add(shape);
                                break;
                        }
                    }
                }
            }
            //リストをトラバースして、リスト内のすべての形状の内部テキストを取得する
            for (int i = 0; i < shapelist.Count; i++)
            {
                IAutoShape shape1 = shapelist[i] as IAutoShape;
                Console.WriteLine(shape1.TextFrame.Text);
            }
            Console.ReadKey();
        }
    }
}

結果は以下のように:

C# を使用して PowerPoint ドキュメントのすべてのタイトルを取得する方法

図形のプレースホルダーのタイプを判断するのはドキュメントのタイトルを取得できるだけではなく、また画像、動画、テーブルおよびフッターまでも取得できます。最後までお読みいただき、ありがとうございました、ではまた!

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30日間有効な一時ライセンスを取得してください。

Read 873 times