Пока что мне удалось добиться желаемого поведения. размер шрифта по умолчанию (надеюсь), используя это метод:
Код: Выделить всё
def _find_default_size(self, document):
if(document != None and
document.styles != None and
document.styles.element != None):
styles_elem = document.styles.element
# print(et.tostring(styles_elem))
default_LXML = styles_elem.xpath('w:docDefaults/w:rPrDefault')
if(len(default_LXML) != 0 and
len(default_LXML[0]) != 0):
# https://github.com/python-openxml/python-docx/blob/master/src/docx/oxml/text/font.py
run = default_LXML[0][0] # Should be a type CT_RPr
if(run.sz_val):
return run.sz_val.pt
return -1
Хотя этот метод получает размер шрифта по умолчанию, я изо всех сил пытаюсь понять, почему он это делает, и пытаюсь собрать другие вещи, такие как выравнивание абзаца по умолчанию, цвет шрифта по умолчанию и т. д. p>
Кроме того, я хотел бы добавить, что я пытался преобразовать файл docx в zip-файл, чтобы попытаться вручную найти расположение нужных значений по умолчанию, но ничего не вышло пока
Подробнее здесь: https://stackoverflow.com/questions/791 ... properties
Мобильная версия