番号付きリストや箇条書きは、情報を整理し、PowerPoint スライドを読みやすくするのに役立ちます。手順の説明、重要なポイントの強調、プロジェクトタスクの整理、技術的な概念の解説など、さまざまな場面で活用できます。
Spire.Presentation for Python を使用すると、図形のテキストフレームに段落を追加し、箇条書きのプロパティを設定することで、これらのリストをプログラムから作成できます。この記事では、番号付きリスト、記号付き箇条書き、画像を使用した箇条書きの 3 つの方法を紹介します。
前提条件
まず、以下の pip コマンドを実行して Spire.Presentation for Python をインストールします。
pip install Spire.Presentation
または、Spire.Presentation for Python のダウンロードページ から手動でライブラリをインストールすることもできます。
次に、必要なモジュールをインポートします。
from spire.presentation.common import *
from spire.presentation import *
以下のサンプルでは、プレゼンテーションを作成し、最初のスライドにテキストを含む図形を追加して、結果を PowerPoint ファイルとして保存します。
1. Python で PowerPoint に番号付きリストを作成する
番号付きリストは、項目の順序が重要な場合に適しています。たとえば、手順、開発ワークフロー、一連の操作方法などを示す際に便利です。
番号付きリストを作成するには、段落の BulletType プロパティに TextBulletType.Numbered を設定します。さらに、BulletStyle プロパティで番号の形式を指定できます。この例では、NumberedBulletStyle.BulletArabicPeriod を使用して、1.、2.、3. のようにアラビア数字の後ろにピリオドを付けます。
手順
Presentationオブジェクトを作成し、最初のスライドを取得します。- 長方形の図形を追加し、テキストコンテナーとして使用するために塗りつぶしと枠線を無効にします。
- 最初の段落にリストの見出しを設定します。
- 各項目に対して
TextParagraphを作成し、番号付きリストのプロパティを設定します。 - プレゼンテーションを PPTX ファイルとして保存します。
完全なコード
from spire.presentation.common import *
from spire.presentation import *
# プレゼンテーションを作成
presentation = Presentation()
# 最初のスライドを取得
slide = presentation.Slides[0]
# 図形を追加してスタイルを設定
shape = slide.Shapes.AppendShape(
ShapeType.Rectangle,
RectangleF(50.0, 50.0, 300.0, 200.0)
)
shape.Fill.FillType = FillFormatType.none
shape.Line.FillType = FillFormatType.none
# 見出しの段落を設定
paragraph = shape.TextFrame.Paragraphs[0]
paragraph.Text = "Web 開発に必要なスキル:"
paragraph.Alignment = TextAlignmentType.Left
paragraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
paragraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
# リスト項目を指定
listItems = [
"コマンドライン Unix",
"Vim",
"HTML",
"CSS",
"Python",
"JavaScript",
"SQL"
]
# 番号付きリストを作成
for item in listItems:
textParagraph = TextParagraph()
textParagraph.Text = item
textParagraph.Alignment = TextAlignmentType.Left
textParagraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
textParagraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
textParagraph.Indent = 20.0
# 番号の形式を設定
textParagraph.BulletType = TextBulletType.Numbered
textParagraph.BulletStyle = NumberedBulletStyle.BulletArabicPeriod
shape.TextFrame.Paragraphs.Append(textParagraph)
# プレゼンテーションを保存
presentation.SaveToFile("NumberedList.pptx", FileFormat.Pptx2013)
presentation.Dispose()
このコードでは、「Web 開発に必要なスキル:」という見出しの下に、7 つの項目を番号付きで配置したスライドを作成します。各項目は独立した段落として追加されるため、PowerPoint で番号の形式を一貫して適用できます。

主なプロパティは次のとおりです。
BulletType:番号付きリストを有効にします。BulletStyle:番号の形式を指定します。Alignment:段落内のテキストの配置を制御します。
別の番号形式を使用する場合は、BulletStyle に対応する別の NumberedBulletStyle 値を指定できます。
2. Python で PowerPoint に記号付き箇条書きを作成する
記号付き箇条書きは、項目の順序が重要ではない場合に適しています。たとえば、講義のトピック、製品の機能、要件、重要なポイントなどを列挙する際に便利です。
番号付きリストとは異なり、記号付き箇条書きでは項目の順序よりも、それぞれのポイントを強調できます。Spire.Presentation for Python では、TextBulletType.Symbol を設定することで、この形式のリストを作成できます。
手順
基本的な手順は、番号付きリストの場合とほぼ同じです。
- 最初のスライドに図形を追加し、テキストフレームを設定します。
- 見出しの段落を設定します。
- 各項目に対して
TextParagraphを作成します。 BulletTypeにTextBulletType.Symbolを設定します。- 各段落を追加し、プレゼンテーションを保存します。
完全なコード
from spire.presentation.common import *
from spire.presentation import *
# プレゼンテーションを作成
presentation = Presentation()
# 最初のスライドを取得
slide = presentation.Slides[0]
# 図形を追加してスタイルを設定
shape = slide.Shapes.AppendShape(
ShapeType.Rectangle,
RectangleF(50.0, 50.0, 350.0, 200.0)
)
shape.Fill.FillType = FillFormatType.none
shape.Line.FillType = FillFormatType.none
# 見出しの段落を設定
paragraph = shape.TextFrame.Paragraphs[0]
paragraph.Text = "コンピューターサイエンスの科目:"
paragraph.Alignment = TextAlignmentType.Left
paragraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
paragraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
# リスト項目を指定
listItems = [
"データ構造",
"アルゴリズム",
"コンピューターネットワーク",
"オペレーティングシステム",
"計算理論",
"C プログラミング",
"コンピューターの構成とアーキテクチャ"
]
# 記号付き箇条書きを作成
for item in listItems:
textParagraph = TextParagraph()
textParagraph.Text = item
textParagraph.Alignment = TextAlignmentType.Left
textParagraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
textParagraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
textParagraph.Indent = 20.0
# 記号付き箇条書きを有効化
textParagraph.BulletType = TextBulletType.Symbol
shape.TextFrame.Paragraphs.Append(textParagraph)
# プレゼンテーションを保存
presentation.SaveToFile("SymbolBulletedList.pptx", FileFormat.Pptx2013)
presentation.Dispose()

この例では、「コンピューターサイエンスの科目:」という見出しの下に、7 つの科目を箇条書きで配置します。BulletType に TextBulletType.Symbol を設定することで、各段落に記号付きの箇条書き形式を適用します。
なお、このコードでは特定の箇条書き記号を明示的に指定していません。実際に表示される記号は、ライブラリの既定の動作や、生成された PowerPoint の書式設定によって異なります。
3. Python で PowerPoint に画像付き箇条書きを作成する
より独自性のあるプレゼンテーションを作成したい場合は、標準の箇条書き記号の代わりに画像を使用できます。画像付き箇条書きは、ブランドイメージを反映したプレゼンテーション、プロジェクトのチェックリスト、操作手順を説明するスライドなど、標準の記号ではデザインに合わない場合に便利です。
Spire.Presentation for Python では、TextBulletType.Picture を設定することで、画像を箇条書きとして使用できます。画像を読み込み、プレゼンテーションの画像コレクションに追加した後、取得した画像データを段落の BulletPicture.EmbedImage プロパティに割り当てます。
この例では、Python スクリプトと同じディレクトリに icon.png という画像ファイルを用意してください。
手順
- プレゼンテーションを作成し、最初のスライドに図形を追加します。
- 見出しの段落を設定し、リスト項目を定義します。
- 各項目に対して段落を作成し、箇条書きの種類に
TextBulletType.Pictureを設定します。 Streamを使用して画像を読み込み、プレゼンテーションの画像コレクションに追加します。- 画像データを
BulletPicture.EmbedImageに割り当てます。 - 各段落を追加し、画像ストリームを閉じます。
- プレゼンテーションを PPTX ファイルとして保存します。
完全なコード
from spire.presentation.common import *
from spire.presentation import *
# プレゼンテーションを作成
presentation = Presentation()
# 最初のスライドを取得
slide = presentation.Slides[0]
# 図形を追加してスタイルを設定
shape = slide.Shapes.AppendShape(
ShapeType.Rectangle,
RectangleF(50.0, 50.0, 400.0, 180.0)
)
shape.Fill.FillType = FillFormatType.none
shape.Line.FillType = FillFormatType.none
# 見出しの段落を設定
paragraph = shape.TextFrame.Paragraphs[0]
paragraph.Text = "プロジェクトのタスクリスト:"
paragraph.Alignment = TextAlignmentType.Left
paragraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
paragraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
# リスト項目を指定
listItems = [
"取り組むプロジェクトとタスクを定義する",
"各タスクの担当者を割り当てる",
"タスクの優先度を設定する",
"タスクの進捗状況を管理する",
"完了したタスクに完了マークを付ける"
]
# 画像付き箇条書きを作成
for item in listItems:
textParagraph = TextParagraph()
textParagraph.Text = item
textParagraph.Alignment = TextAlignmentType.Left
textParagraph.TextRanges[0].Fill.FillType = FillFormatType.Solid
textParagraph.TextRanges[0].Fill.SolidColor.Color = Color.get_Black()
textParagraph.Indent = 20.0
# 箇条書きの種類を画像に設定
textParagraph.BulletType = TextBulletType.Picture
# 画像を読み込んで埋め込む
stream = Stream("icon.png")
imageData = presentation.Images.AppendStream(stream)
textParagraph.BulletPicture.EmbedImage = imageData
shape.TextFrame.Paragraphs.Append(textParagraph)
stream.Close()
# プレゼンテーションを保存
presentation.SaveToFile("ImageBulletedList.pptx", FileFormat.Pptx2013)
presentation.Dispose()
このコードでは、各項目の先頭に指定した画像を配置したプロジェクトのタスクリストを作成します。

主なプロパティとメソッドは次のとおりです。
TextBulletType.Picture:画像付き箇条書きを指定します。presentation.Images.AppendStream(stream):画像データをプレゼンテーションに追加します。BulletPicture.EmbedImage:埋め込まれた画像を段落の箇条書きに割り当てます。
指定したパスから画像ファイルを読み込めるようにしておく必要があります。プレゼンテーションのデザインに合わせて、icon.png を別の対応画像に置き換えることもできます。
実際の開発では、すべての項目で同じ画像を使用する場合、画像データを再利用することを検討してください。毎回同じファイルを読み込んで追加する必要がなくなり、処理を効率化できます。
まとめ
Spire.Presentation for Python では、段落のプロパティを設定することで、さまざまな形式の PowerPoint リストをプログラムから作成できます。
項目の順序が重要な場合は TextBulletType.Numbered、一般的な箇条書きには TextBulletType.Symbol、独自の画像を使用したい場合は TextBulletType.Picture を使用します。これらのプロパティをテキストの書式設定や図形の設定と組み合わせることで、レポート、説明資料、業務用プレゼンテーションなど、さまざまな用途に適したスライドを生成できます。
FAQ
1. Python で PowerPoint に番号付きリストを作成するには?
Spire.Presentation for Python を使用し、段落の BulletType プロパティに TextBulletType.Numbered を設定すると、番号付きリストを作成できます。また、BulletStyle プロパティで、数字の後ろにピリオドを付ける形式など、番号のスタイルを指定できます。
2. Python で PowerPoint に箇条書きを作成するには?
段落の BulletType プロパティに TextBulletType.Symbol を設定すると、記号付き箇条書きを作成できます。各項目を個別の TextParagraph として作成し、図形のテキストフレームに追加します。
3. Python で PowerPoint の箇条書きに独自の画像を使用できますか?
はい。BulletType に TextBulletType.Picture を設定し、Stream を使用して画像を読み込んでから、プレゼンテーションの画像コレクションに追加します。その後、取得した画像データを段落の BulletPicture.EmbedImage プロパティに割り当てることで、画像を箇条書きとして使用できます。
4. Python でリストを含む PowerPoint プレゼンテーションを保存するには?
SaveToFile() メソッドを使用して、プレゼンテーションを PPTX ファイルとして保存できます。たとえば、presentation.SaveToFile("output.pptx", FileFormat.Pptx2013) と記述すると、PowerPoint 2013 形式でファイルを保存できます。保存後は、presentation.Dispose() を呼び出してリソースを解放します。
無料トライアルライセンスの取得
Spire.Presentation for Python の機能を評価制限なしで体験したい場合は、30 日間無料トライアルライセンス を申請できます。






