「python-pptx プレースホルダー 改行」
という検索キーワードでアクセスがありました。
python-pptxを使って、改行を含む文字列をプレースホルダーに入れるには、どのようなコードを書けばいいのかを探していらしたのでしょうか。
プレースホルダーに改行を含む文字列を入力するサンプル
以下のスクリプトを実行すると、プレースホルダーに改行を含む文字列の入力されたプレゼンテーションファイルsample.pptxが、Cドライブtempフォルダーに作成されます。
prs = pptx.Presentation()
layout = prs.slide_layouts[1]
sld = prs.slides.add_slide(layout)
sld.placeholders[0].text = 'タイトル\nプレースホルダー'
items = ['項目1', '項目2' ,'項目3']
sld.placeholders[1].text = '\n'.join(items)
スクリプトで行っている処理について
最初に、プレゼンテーションファイルを新規に作成して、
prs = pptx.Presentation()
[タイトルとコンテンツ]レイアウトのスライドを挿入しています。
layout = prs.slide_layouts[1]
sld = prs.slides.add_slide(layout)
続いて、1つ目のプレースホルダー(タイトルプレースホルダー)に、「タイトル」の次にエスケープシーケンス「\n」で改行された「タイトルプレースホルダー」という文字列を入力しています。
sld.placeholders[0].text = 'タイトル\nプレースホルダー'
2つ目のプレースホルダー(コンテンツプレースホルダー)には、文字列「項目1」「項目2」「項目3」を箇条書きしています。
items = ['項目1', '項目2' ,'項目3']
sld.placeholders[1].text = '\n'.join(items)
右辺の「'\n'.join(items)」は、str.joinメソッドを使って文字列連結時に改行を入れているコードです。
最終更新日時:2021-05-05 06:39
Home » Python » python-pptxの使い方 » python-pptxでプレースホルダーに改行を