Word のヘッダーとフッターは、各ページの上部および下部の余白に配置されるセクションです。これには、ページ番号、文書タイトル、日付、作成者名などの情報を追加できます。通常、すべてのページで同じヘッダーやフッターが適用されますが、特定のシナリオでは、最初のページ、奇数ページ、偶数ページに異なるヘッダーやフッターを挿入することも可能です。本記事では、Spire.Doc for Python を使用して、Python で Word 文書にヘッダーとフッターを挿入する方法を説明します。 Python で Word 文書にヘッダーとフッターを挿入する 最初のページと他のページで異なるヘッダー・フッター 奇数・偶数ページで異なるヘッダー・フッター Spire.Doc for Python のインストール この操作には、Spire.Doc for Python と plum-dispatch v1.7.4 が必要です。これらは、Spire.Doc for Python の公式ウェブサイトから手動でダウンロードするか、以下の pip コマンドでインストールできます。 pip install Spire.Doc Python で Word 文書にヘッダーとフッターを挿入する Word 文書にヘッダーやフッターを挿入するには、まず Section.HeadersFooters.Header または Section.HeadersFooters.Footer プロパティを取得し、それに段落を追加して、画像やテキスト、ページ番号、日付などを挿入します。 ヘッダーとフッターを追加する手順 Document オブジェクトを作成します。 Document.LoadFromFile() メソッドを使用して Word 文書を読み込みます。 Document.Sections.get_Item() メソッドを使用して、対象のセクションを取得します。 ヘッダーを追加する Section.HeadersFooters.Header プロパティを使用してヘッダーを取得します。 HeaderFooter.AddParagraph() メソッドで段落を追加し、段落の配置を設定します。 Paragraph.AppendPicture() メソッドで画像を追加し、画像の折り返しスタイルや位置を設定します。 Paragraph.AppendText() メソッドでテキストを追加し、フォント名、サイズ、色などを設定します。 フッターを追加する Section.HeadersFooters.Footer プロパティを使用してフッターを取得します。 フッターに段落を追加し、テキストを挿入します。 Paragraph.Format.Borders プロパティを使用してフッターの枠線を取得し、上部の罫線スタイルや間隔を設定します。 Document.SaveToFile() メソッドを使用して、変更後の文書を保存します。 Python from spire.doc import Document, HorizontalAlignment, TextWrappingStyle, VerticalOrigin, ShapeVerticalAlignment, Color, BorderStyle # Document オブジェクトを作成します document = Document() # Word 文書を読み込みます document.LoadFromFile("Sample.docx") # 最初のセクションを取得します section = document.Sections.get_Item(0) # ヘッダーを取得します header = section.HeadersFooters.Header # ヘッダーに段落を追加し、配置スタイルを設定します headerParagraph = header.AddParagraph() headerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Left # ヘッダーの段落に画像を追加し、折り返しスタイルと位置を設定します headerPicture = headerParagraph.AppendPicture("Logo.png") headerPicture.TextWrappingStyle = TextWrappingStyle.Square headerPicture.VerticalOrigin = VerticalOrigin.Paragraph headerPicture.VerticalAlignment = ShapeVerticalAlignment.Center # ヘッダーの段落にテキストを追加し、フォントスタイルを設定します text = headerParagraph.AppendText("Spire.Doc for PythonnPython 用 Word 文書処理マスター") text.CharacterFormat.FontName = "Yu Gothic UI" text.CharacterFormat.FontSize = 10 text.CharacterFormat.Bold = True text.CharacterFormat.TextColor = Color.get_Blue() # フッターを取得します footer = section.HeadersFooters.Footer # フッターに段落を追加し、配置スタイルを設定します footerParagraph = footer.AddParagraph() footerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center # フッターの段落にテキストを追加し、フォントスタイルを設定します text = footerParagraph.AppendText("Copyright © 2013 e-iceblue. すべての権利を保有。") text.CharacterFormat.FontName = "Yu Gothic UI" text.CharacterFormat.FontSize = 10 # フッターの段落に罫線を設定します footerParagraph.Format.Borders.Top.BorderType = BorderStyle.Single footerParagraph.Format.Borders.Top.Space = 0.05 # 結果のファイルを保存します document.SaveToFile("output/Wordのヘッダーとフッター.docx") document.Close() 最初のページと他のページで異なるヘッダー・フッター 最初のページのみにヘッダーやフッターを追加する場合、または最初のページとそれ以外のページで異なるヘッダーやフッターを設定したい場合があります。 Spire.Doc for Python では、Section.PageSetup.DifferentFirstPageHeaderFooter プロパティを使用することで、最初のページ専用のヘッダーやフッターを設定できます。以下の手順で実装できます。 最初のページとその他のページで異なるヘッダー・フッターを設定する手順 Document オブジェクトを作成します。 Document.LoadFromFile() メソッドで Word 文書を読み込みます。 Document.Sections.get_Item() メソッドを使用して、対象のセクションを取得します。 Section.PageSetup.DifferentFirstPageHeaderFooter プロパティを True に設定し、最初のページのヘッダー・フッターを有効化します。 Section.HeadersFooters.FirstPageHeader プロパティを使用して最初のページのヘッダーを取得します。 段落を追加し、画像を挿入します。 Section.HeadersFooters.FirstPageFooter プロパティを使用して最初のページのフッターを取得します。 段落を追加し、テキストを挿入します。 その他のページのヘッダー・フッターを設定します。(最初のページのみにヘッダー・フッターを追加する場合は、この手順は不要です。) Document.SaveToFile() メソッドで保存します。 Python from spire.doc import Document, HorizontalAlignment, Color, BorderStyle # Document オブジェクトを作成します doc = Document() # Word 文書を読み込みます doc.LoadFromFile("Sample.docx") # 最初のセクションを取得します section = doc.Sections.get_Item(0) # 先頭ページとその他のページで異なるヘッダーとフッターを有効にします section.PageSetup.DifferentFirstPageHeaderFooter = True # 先頭ページのヘッダーに段落を追加し、配置スタイルを設定します headerParagraph = section.HeadersFooters.FirstPageHeader.AddParagraph() headerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Right # ヘッダーの段落に画像を追加します headerImage = headerParagraph.AppendPicture("Logo1.png") # 先頭ページのフッターに段落を追加し、配置スタイルを設定します footerParagraph = section.HeadersFooters.FirstPageFooter.AddParagraph() footerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center # フッターの段落にテキストを追加し、フォントスタイルを設定します text = footerParagraph.AppendText("異なる最初のページのフッター") text.CharacterFormat.FontSize = 11 text.CharacterFormat.FontName = "Yu Gothic UI" # その他のページのヘッダーとフッターを設定します # 先頭ページのみヘッダーとフッターを設定する場合、この処理は不要です para = section.HeadersFooters.Header.AddParagraph() para.Format.HorizontalAlignment = HorizontalAlignment.Left paraText = para.AppendText("プロフェッショナルなWord Python API") paraText.CharacterFormat.FontSize = 12 paraText.CharacterFormat.TextColor = Color.get_DeepPink() paraText.CharacterFormat.FontName = "Yu Gothic UI" para.Format.Borders.Bottom.BorderType = BorderStyle.Single para.Format.Borders.Bottom.Space = 0.05 paragraph = section.HeadersFooters.Footer.AddParagraph() paragraph.Format.HorizontalAlignment = HorizontalAlignment.Center paraText = paragraph.AppendText("Spire.Doc for Python") paraText.CharacterFormat.FontSize = 12 paraText.CharacterFormat.FontName = "Yu Gothic UI" paraText.CharacterFormat.Bold = True paraText.CharacterFormat.TextColor = Color.get_DodgerBlue() # 結果の文書を保存します doc.SaveToFile("output/異なる最初のページのヘッダーとフッター.docx") doc.Close() 奇数・偶数ページで異なるヘッダー・フッター 奇数ページと偶数ページで異なるヘッダーやフッターを設定するには、Spire.Doc for Python の Section.PageSetup.DifferentOddAndEvenPagesHeaderFooter プロパティを使用します。以下の手順で実装できます。 奇数ページと偶数ページで異なるヘッダー・フッターを設定する手順 Document オブジェクトを作成します。 Document.LoadFromFile() メソッドで Word 文書を読み込みます。 Document.Sections.get_Item() メソッドを使用して、対象のセクションを取得します。 Section.PageSetup.DifferentOddAndEvenPagesHeaderFooter プロパティを True に設定し、奇数ページと偶数ページで異なるヘッダー・フッターを有効化します。 Section.HeadersFooters.OddHeader および Section.HeadersFooters.OddFooter プロパティを使用して、奇数ページのヘッダーとフッターを取得します。 段落を追加し、テキストを挿入します。 Section.HeadersFooters.EvenHeader および Section.HeadersFooters.EvenFooter プロパティを使用して、偶数ページのヘッダーとフッターを取得します。 段落を追加し、テキストを挿入します。 Document.SaveToFile() メソッドで保存します。 Python from spire.doc import Document, HorizontalAlignment, Color # Document オブジェクトを作成します doc = Document() # Word 文書を読み込みます doc.LoadFromFile("Sample.docx") # 最初のセクションを取得します section = doc.Sections.get_Item(0) # 奇数ページと偶数ページで異なるヘッダーとフッターを有効にします section.PageSetup.DifferentOddAndEvenPagesHeaderFooter = True # 奇数ページのヘッダーとフッターを追加します OHPara = section.HeadersFooters.OddHeader.AddParagraph() OHText = OHPara.AppendText("奇数ページのヘッダー") OHPara.Format.HorizontalAlignment = HorizontalAlignment.Center OHText.CharacterFormat.FontName = "Yu Gothic UI" OHText.CharacterFormat.FontSize = 12 OHText.CharacterFormat.TextColor = Color.get_Red() OFPara = section.HeadersFooters.OddFooter.AddParagraph() OFText = OFPara.AppendText("奇数ページのフッター") OFPara.Format.HorizontalAlignment = HorizontalAlignment.Center OFText.CharacterFormat.FontName = "Yu Gothic UI" OFText.CharacterFormat.FontSize = 12 OFText.CharacterFormat.TextColor = Color.get_Red() # 偶数ページのヘッダーとフッターを追加します EHPara = section.HeadersFooters.EvenHeader.AddParagraph() EHText = EHPara.AppendText("偶数ページのヘッダー") EHPara.Format.HorizontalAlignment = HorizontalAlignment.Center EHText.CharacterFormat.FontName = "Yu Gothic UI" EHText.CharacterFormat.FontSize = 12 EHText.CharacterFormat.TextColor = Color.get_Blue() EFPara = section.HeadersFooters.EvenFooter.AddParagraph() EFText = EFPara.AppendText("偶数ページのフッター") EFPara.Format.HorizontalAlignment = HorizontalAlignment.Center EFText.CharacterFormat.FontName = "Yu Gothic UI" EFText.CharacterFormat.FontSize = 12 EFText.CharacterFormat.TextColor = Color.get_Blue() # 結果の文書を保存します doc.SaveToFile("output/奇数と偶数ページのヘッダーとフッター.docx") doc.Close() 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。