页眉和页脚

Word支持页眉和页脚。页眉是出现在每个页面的上边距区域中的文本,与文本主体分开,并且通常传达上下文信息,例如文档标题,作者,创建日期或页码。文档中的页眉在页面之间是相同的,内容上只有很小的差异,例如更改部分标题或页码。页眉也称为运行头

页脚在页眉的每个方面都类似,只不过它出现在页面底部。它不应与脚注混淆,脚注在页面之间内容是不一致的

页眉和页脚与一个章节相关联,这允许每个章节具有不同的页眉和/或页脚

页眉:

每个section对象都有一个.header属性,可以访问该节的_Header对象:

from docx import Document
document = Document()
paragraph = document.add_paragraph('段落1')
document.add_section()  #添加新章节
paragraph = document.add_paragraph('段落2')
document.add_section()
paragraph = document.add_paragraph('段落3')
section = document.sections[0]  #返回序号0章节的引用
header = section.header  #返回章节header引用
print(header.is_linked_to_previous)   #章节头(页眉)是否无定义
#值为True表示_Header对象不包含章节头定义,该章节将显示与上一节相同的章节头
#添加页眉
paragraph = header.paragraphs[0]  #返回页眉序号0的段落的引用
#章节头已包含单个(空)段落
#此时把header.is_linked_to_previous属性设为false
paragraph.text = "这是页眉1"
print(header.is_linked_to_previous)
document.save('demo.docx')

删除页眉

通过将True分配给其.is_linked_to_previous属性,可以删除不需要的页眉:

header = section.header  #返回章节header引用header.is_linked_to_previous = True  #删除页眉

页脚:

每个section对象都有一个footer属性,可以访问该章节的页脚对象:

from docx import Document
document = Document()
paragraph = document.add_paragraph('段落1')
document.add_section()  #添加新章节
paragraph = document.add_paragraph('段落2')
document.add_section()
paragraph = document.add_paragraph('段落3')
section = document.sections[0]  #返回序号0章节的引用
header = section.header  #返回章节header引用
print(header.is_linked_to_previous)   #章节头(页眉)是否无定义
#值为True表示_Header对象不包含章节头定义,该章节将显示与上一节相同的章节头
#添加页眉
paragraph = header.paragraphs[0]  #返回页眉序号0的段落的引用
#章节头已包含单个(空)段落
#此时把header.is_linked_to_previous属性设为false
paragraph.text = "这是页眉1"
print(header.is_linked_to_previous)
section = document.sections[0]  #返回序号0章节的引用
footer=section.footer  #返回章节页脚的引用
print(footer.is_linked_to_previous)
#值为True表示页脚对象不包含定义,该章节将显示与上一节相同的页脚
#添加页脚
paragraph = footer.paragraphs[0]  #返回页脚序号0的段落的引用
#页脚已包含单个(空)段落
#此时把footer.is_linked_to_previous属性设为false
paragraph.text = "这是页脚1"
document.save('demo.docx')
#footer.is_linked_to_previous = True  #删除页脚