使用Python在Word文档中插入页眉和页脚

来源:这里教程网 时间:2026-02-16 11:49:03 作者:

引言

在企业日常工作中,专业的文档排版对于报告、计划书或汇报材料至关重要。页眉页脚不仅承载标题、公司名称、日期信息,还能插入公司 Logo,使文档更具规范性和识别度。手动操作容易出错且效率低,而 Python 提供了自动化生成 Word 文档的能力。本文将展示如何创建带页眉、页脚和图片的 Word 文档,结合实际业务场景,构建标准化报告模板。

本文所用示例基于 Free Spire.Doc for Python。

1. 环境准备与安装

在使用之前,需要安装 Spire.Doc for Python:

pip install spire.doc.free

安装完成后即可在 Python 中导入库,创建 Word 文档并进行内容和排版操作。

2. 创建文档与分页

首先创建 Word 文档对象并添加节与分页:

from spire.doc import Document, BreakType

# 创建文档
document = Document()
section = document.AddSection()

# 添加分页
section.AddParagraph().AppendBreak(BreakType.PageBreak)

技术说明与关键方法

Document 表示整个 Word 文档对象。AddSection() 创建新节,用于分节或分页管理。AppendBreak(BreakType.PageBreak) 添加分页符,便于后续排版。

3. 插入页眉文本

页眉通常包含报告标题、公司名称或日期信息,可采用多段落实现不同内容布局:

from spire.doc import HorizontalAlignment

header = section.HeadersFooters.Header

# 左侧文本:报告标题
header_para1 = header.AddParagraph()
header_para1.AppendText("月度销售报告").CharacterFormat.FontSize = 12
header_para1.Format.HorizontalAlignment = HorizontalAlignment.Left

# 右侧文本:公司名称
header_para2 = header.AddParagraph()
header_para2.AppendText("公司名称").CharacterFormat.FontSize = 12
header_para2.Format.HorizontalAlignment = HorizontalAlignment.Right

技术说明与关键方法

HeadersFooters.Header 获取页眉对象。AddParagraph() 添加段落。AppendText(text) 向段落中添加文本。Format.HorizontalAlignment 设置段落水平对齐方式。CharacterFormat.FontSize 设置文字大小。

4. 在页眉中插入图片

企业 Logo 或标识常放在页眉,可通过以下方式插入:

from spire.doc import ShapeHorizontalAlignment, TextWrappingStyle

image = header_para1.AppendPicture("Image.jpg")  # 图片路径
image.Width = 40
image.Height = 40
image.TextWrappingStyle = TextWrappingStyle.InFrontOfText
image.HorizontalAlignment = ShapeHorizontalAlignment.Center

技术说明与关键方法

AppendPicture(path) 方法可插入本地图片。可结合 DocPicture.HorizontalAlignment 设置图片在段落中的位置。支持多段落组合文本与图片,实现灵活排版。

5. 插入页脚及页码

页脚可包含页码和总页数,增强文档规范性:

from spire.doc import FieldType

footer = section.HeadersFooters.Footer
footer_para = footer.AddParagraph()
footer_para.Format.HorizontalAlignment = HorizontalAlignment.Center

footer_para.AppendText("第 ").CharacterFormat.FontSize = 12
footer_para.AppendField("PageNum", FieldType.FieldPage).CharacterFormat.FontSize = 12
footer_para.AppendText(" 页,共 ").CharacterFormat.FontSize = 12
footer_para.AppendField("NumPages", FieldType.FieldNumPages).CharacterFormat.FontSize = 12
footer_para.AppendText(" 页").CharacterFormat.FontSize = 12

技术说明与关键方法

HeadersFooters.Footer 获取页脚对象。AppendField(fieldName, FieldType) 可插入 Word 域,如页码 FieldPage 和总页数 FieldNumPages页脚段落可使用 Format.HorizontalAlignment 设置居中或其他对齐方式。

6. 保存文档并释放资源

完成页眉、页脚及图片设置后,将文档保存并释放资源:

from spire.doc import FileFormat

document.SaveToFile("Monthly_Report.docx", FileFormat.Docx)
document.Dispose()
print("文档创建完成:Monthly_Report.docx")

技术说明与关键方法

SaveToFile(filename, FileFormat) 保存 Word 文档。Dispose() 释放文档对象占用资源,确保文件不被锁定。

结果文档预览

以下是使用上述代码完成创建的 Word 文档预览:

7. 总结

本文介绍了如何使用 Python 在 Word 文档中自动插入页眉、页脚和图片,实现报告模板的自动化生成。通过编程可以灵活添加多段落文本、企业 Logo 以及动态页码,使文档排版更加规范和专业。掌握 DocumentAddSection()HeadersFootersAddParagraph()AppendText()AppendPicture()AppendField() 等核心方法,就能够高效创建符合业务需求的 Word 文档,显著提升文档制作效率和一致性。

以上就是使用Python在Word文档中插入页眉和页脚的详细内容,更多关于Python Word插入页眉和页脚的资料请关注其它相关文章!

相关推荐