Как добавить закладки в файлы Word с помощью Python
Добавляя закладки в ваш документ Word, вы можете легко отмечать важные разделы для быстрого доступа. В этом блоге я расскажу, как программно добавлять закладки с использованием Python.
Установите необходимую библиотеку
Для добавления закладок в Word мы будем использовать библиотеку Free Spire.Doc для Python. Ее можно установить с помощью следующей команды pip:
pip install spire.doc.free
Добавление закладки к абзацу в Word
Чтобы добавить закладку, вам нужно использовать классы BookmarkStart и BookmarkEnd, предоставленные Spire.Doc. Поместите BookmarkStart в начале, а BookmarkEnd в конце содержимого, которое вы хотите забукмаркать, присвоив закладке определенное имя.
Следующий код демонстрирует, как добавить закладку к конкретному абзацу:
from spire.doc import *
from spire.doc.common import *
# Создать объект документа
doc = Document()
# Загрузить пример файла Word
doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx")
# Получить второй абзац
paragraph = doc.Sections[0].Paragraphs[1]
# Создать начало закладки
start = paragraph.AppendBookmarkStart("myBookmark")
# Вставить его в начало абзаца
paragraph.Items.Insert(0, start)
# Добавить конец закладки в конце абзаца
paragraph.AppendBookmarkEnd("myBookmark")
# Сохранить документ в другой файл
doc.SaveToFile("output/AddBookmarkToParagraph.docx", FileFormat.Docx2019)
# Освободить ресурсы
doc.Dispose() Чтобы добавить закладку к определенному
тексту, вы можете сначала использовать метод Document.FindAllString(), чтобы
получить все вхождения текста. Затем выберите конкретный экземпляр и вставьте
элемент BookmarkStart перед ним и элемент BookmarkEnd после него. Следующий код иллюстрирует, как добавить
закладку к указанному тексту: from spire.doc import * from spire.doc.common import * # Создать объект документа doc = Document() # Загрузить пример файла Word doc.LoadFromFile("C:\\Users\\Administrator\\Desktop\\input.docx") # Указать строку для поиска string = «legal obligations» # Найти все вхождения строки в документе finds = doc.FindAllString(string, False,
True) # Получить конкретное вхождение specificText = finds[0] # Найти абзац, где расположен текст paragraph =
specificText.GetAsOneRange().OwnerParagraph # Получить индекс текста в абзаце index =
paragraph.ChildObjects.IndexOf(specificText.GetAsOneRange()) # Создать начало закладки start =
paragraph.AppendBookmarkStart("myBookmark") # Вставить начало закладки на индексной
позиции paragraph.ChildObjects.Insert(index, start) # Создать конец закладки end =
paragraph.AppendBookmarkEnd("myBookmark") # Вставить конец закладки в конце
выбранного текста paragraph.ChildObjects.Insert(index + 2,
end) # Сохранить документ в другой файл doc.SaveToFile("output/AddBookmarkToText.docx",
FileFormat.Docx2019) # Освободить ресурсы doc.Dispose() В этом блоге мы рассмотрели, как добавлять
закладки в документ Word с помощью Python. Надеюсь, это поможет кому-то в
нужде. Удачного кодирования! Смотрите
также: Как
создавать документы Word в Python

Добавление закладки к указанному тексту в Word

Заключение