Как добавить верхний и нижний колонтитул в Word на Python
Добавление верхнего и нижнего колонтитулов в документ Word поможет сохранить единообразный вид и настроение всех страниц. Верхний колонтитул отображается в верхней части каждой страницы, а нижний — в нижней. Эта функция позволяет разместить на каждой странице важную информацию, например номера страниц, название документа или контактные данные.
В этой статье я расскажу, как добавить верхние и нижние колонтитулы в документ Word с помощью Python и библиотеки Spire.Doc.
- Добавление верхних и нижних колонтитулов в документ Word
- Добавление разных верхних и нижних колонтитулов для первой и других страниц
Установите Spire.Doc с помощью Pip
Spire.Doc for Python — это профессиональная библиотека, созданная для разработчиков для создания, чтения и манипулирования файлами Word Doc или Docx в приложениях на Python. Ее можно легко установить с помощью следующей команды Pip.
pip install Spire.Doc
Добавление верхних и нижних колонтитулов в документ Word
Чтобы включить верхний или нижний колонтитул в документ Word, необходимо сначала получить их, обратившись к свойствам Section.HeadersFooters.Header и Section.HeadersFooters.Footer. Получив эти элементы, вы можете добавить абзацы в верхний или нижний колонтитул, что позволит вам вставлять различное содержимое, например изображения, текст, номера страниц, даты и многое другое.
from spire.doc import *
from spire.doc.common import *
# Создать объект Document
document = Document()
# Загрузить документ Word
document.LoadFromFile("Sample.docx")
# Получить первый раздел
section = document.Sections[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.Line
headerPicture.VerticalAlignment = ShapeVerticalAlignment.Center
# Добавить текст в абзац верхнего колонтитула и установить его стиль шрифта
text = headerParagraph.AppendText("E-iceblue Co. Ltd.«+ « Your Office Development Master»)
text.CharacterFormat.FontName = «Arial»
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. All Rights Reserved.")
text.CharacterFormat.FontName = «Arial»
text.CharacterFormat.FontSize = 10
# Установить границу абзаца нижнего колонтитула
footerParagraph.Format.Borders.Top.BorderType = BorderStyle.Single
footerParagraph.Format.Borders.Top.Space = 0.05
# Сохранить результирующий файл
document.SaveToFile("HeaderAndFooter.docx", FileFormat.Docx)
document.Close()
Добавление разных верхних и нижних колонтитулов для первой и других страниц
Бывают случаи, когда вам требуется уникальный верхний и нижний колонтитул для первой страницы документа Word, отличающий ее от остальных страниц документа. Spire.Doc for Python предлагает простой способ решить эту задачу благодаря свойству Section.PageSetup.DifferentFirstPageHeaderFooter, которое позволяет создать отдельный верхний и нижний колонтитул специально для первой страницы документа.
from spire.doc import *
from spire.doc.common import *
# Создать объект Document
doc = Document()
# Загрузить документ Word
doc.LoadFromFile("Sample.docx")
# Получить первый раздел
section = doc.Sections[0]
# Включить разные колонтитулы для первой страницы и других страниц
section.PageSetup.DifferentFirstPageHeaderFooter = True
# Добавить абзац в колонтитул первой страницы и установить его стиль выравнивания
headerParagraph = section.HeadersFooters.FirstPageHeader.AddParagraph()
headerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Right
# Добавить изображение в абзац колонтитула
headerimage = headerParagraph.AppendPicture("E-iceblue.png")
# Добавить абзац в колонтитул первой страницы и установить его стиль выравнивания
footerParagraph = section.HeadersFooters.FirstPageFooter.AddParagraph()
footerParagraph.Format.HorizontalAlignment = HorizontalAlignment.Center
# Добавить текст в абзац колонтитула и установить его стиль шрифта
text = footerParagraph.AppendText("Different First Page Footer")
text.CharacterFormat.FontSize = 11
# Установить колонтитулы для других страниц. Если вы задаете колонтитулы только для первой страницы, не устанавливайте это.
para = section.HeadersFooters.Header.AddParagraph()
para.Format.HorizontalAlignment = HorizontalAlignment.Left
paraText = para.AppendText("A Professional Word Python API")
paraText.CharacterFormat.FontSize = 12
paraText.CharacterFormat.TextColor = Color.get_DeepPink()
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("E-iceblue Co. Ltd.")
paraText.CharacterFormat.FontSize = 12
paraText.CharacterFormat.Bold = True
paraText.CharacterFormat.TextColor = Color.get_DodgerBlue()
# Сохранить результирующий документ
doc.SaveToFile("DifferentFirstPage.docx", FileFormat.Docx)
doc.Close()
Заключение
В этой статье вы узнали, как вставить верхние и нижние колонтитулы в документ Word на Python с помощью Spire.Doc for Python. Эта библиотека позволяет разработчикам делать множество других вещей, связанных с документами Word, таких как:
Замена текста в Word на Python