Python Docx библиотека текста выравнивается
-
21-12-2019 - |
Вопрос
Я использую библиотеку Python DOCX, чтобы манипулировать документом Word.Однако я не могу найти, как выровнять строку в центр на странице документов этой библиотеки.Я тоже не могу найти в Google.
from docx import Document
document = Document()
p = document.add_paragraph('A plain paragraph having some ')
p.add_run('bold').bold = True
p.add_run(' and some ')
p.add_run('italic.').italic = True
.
Как я могу выровнять текст в DOCX?
Решение
С новой версией Python-Docx 0,7 https:// github.COM / Python-OpenXML / Python-Docx / Commit / 158f2121bcd2c58b258dec1b83f8fef15316de19 Добавить функцию # 51: Пункт. Аналигмент (чтение / запись) Теперь можно выровнять абзац как здесь: http://python-docx.readtheDocs.org/en/latest/dev/analysis/features/par-Alignment.html
paragraph = document.add_paragraph("This is a text")
paragraph.alignment = 0 # for left, 1 for right, 2 center, 3 justify ....
.
Редактировать от комментариев
На самом деле это 0 для левого, 1 для центра, 2 для права
Редактировать 2 из комментариев
Вы не должны сложные магические номера, как это.Используйте WD_ALIGN_PARAGRAPH.CENTER
, чтобы получить правильное значение для центрирования и т. Д. Для этого используйте следующий импорт
from docx.enum.text import WD_ALIGN_PARAGRAPH
. Другие советы
p = document.add_paragraph('A plain paragraph having some ',style='BodyText', breakbefore=False, jc='left')# @param string jc: Paragraph alignment, possible values:left, center, right, both (justified), ...
.
Для справки см. Это Ссылка в пункте defДокументация