Как поменять стиль таблицы в word python
Объект Table модуля python-docx представляет собой прокси-объект, который оборачивает элемент WordprocessingML .
Объект Table не создается вручную, а возвращается в результате вызова метода Document.add_table() .
Пример добавления таблицы в документ :
Свойства и методы объекта Table .
- Table.add_column() добавляет колонку,
- Table.add_row() добавляет строку,
- Table.alignment выравнивание таблицы,
- Table.autofit авто подгонка ширины колонок таблицы,
- Table.cell() возвращает экземпляр определенной ячейки,
- Table.column_cells() список ячеек в определенном столбце,
- Table.columns список столбцов таблицы,
- Table.row_cells() список ячеек в определенной строке,
- Table.rows список строк таблицы,
- Table.style стиль таблицы,
- Table.table_direction направление, в котором упорядочены ячейки таблицы.
Table.add_column(width) :
Метод Table.add_column() добавляет колонку шириной width в крайний правый угол таблицы и возвращает экземпляр Column добавленной колонки.
Объект Column имеет свойства:
- cells - последовательность экземпляров Cell , соответствующих ячейкам в этом столбце.
- table - ссылка на объект таблицы Table , которому принадлежит этот столбец.
- width - ширина этого столбца в величине EMU или None , если ширина явно не задана.
Table.add_row() :
Метод Table.add_row() добавляет строку в самую нижнюю часть таблицы и возвращает экземпляр Row , только что добавленной строки.
Объект Row имеет свойства:
- cells - последовательность экземпляров Cell , соответствующих ячейкам в этом столбце.
- table - ссылка на объект таблицы Table , которому принадлежит этот столбец.
- height - возвращает/устанавливает объект Length , представляющий высоту этой ячейки, или None , если высота явно не задана.
- height_rule - возвращает/устанавливает правило высоты этой ячейки как член перечисления WD_ROW_HEIGHT_RULE или None , если явное правило высоты не установлено.
Table.alignment :
Свойство Table.alignment возвращает/устанавливает правило, которое определяет расположение этой таблицы между полями страницы. Значение является членом перечисления WD_TABLE_ALIGNMENT или None . Значение None говорит о том, что действующее значение наследуется от иерархии стилей.
Table.autofit :
Свойство Table.autofit принимает/возвращает True , если ширина столбцов автоматически регулируется для лучшего соответствия содержимому ячеек и False , если макет таблицы фиксированный.
Ширина столбца корректируется в любом случае, если общая ширина столбцов превышает ширину страницы.
Table.cell(row_idx, col_idx) :
Метод Table.cell() возвращает экземпляр Сell , соответствующий ячейке таблицы на пересечении row_idx , col_idx , где (0, 0) является верхней, самой левой ячейкой.
Table.column_cells(column_idx) :
Метод Table.column_cells() представляет собой последовательность ячеек Сell в столбце с номером column_idx в этой таблице.
Table.columns :
Свойство Table.columns представляет собой последовательность объектов столбцов Column в этой таблице.
Table.row_cells(row_idx) :
Метод Table.row_cells() представляет собой последовательность ячеек Сell в строке с номером row_idx в этой таблице.
Table.rows :
Свойство Table.rows представляет собой последовательность строк Row в этой таблице. Поддерживает функцию len() , итерацию, доступ к строке по индексу, а так же получение среза строк.
Table.style :
Свойство Table.style устанавливает/возвращает объект стиля таблицы Style или Имя Стиля Таблицы, которое встроено в пользовательский интерфейс редактора MS Word.
Если таблица не имеет стиля, то возвращается стиль таблицы по умолчанию для документа (часто обычная таблица). Назначение этому свойству значения None удаляет любой применяемый напрямую стиль таблицы, заставляя его наследовать стиль таблицы документа по умолчанию.
Обратите внимание, что имя стиля таблицы немного отличается от имени, отображаемого в пользовательском интерфейсе MS Word. Дефис, если он есть, то его необходимо удалить. Например, Light Shading - Accent 1 становится Light Shading Accent 1 .
Важно. Встроенные стили хранятся в файле WordprocessingML под своим английским именем, например 'Table Grid' , и не зависят от локализации MS Word. Так как модуль python-docx работает с файлом WordprocessingML , то поиск стиля должен использовать английское имя. Если файл WordprocessingML не найден (MS Word не установлен, например в OS Linux) то модуль python-docx работает со своей версией этого файла. Что бы создать сопоставление между именами стилей на русском языке и именами на английском языке посетите эту ссылку.
Table.table_direction :
Свойство Table.table_direction это элемент WD_TABLE_DIRECTION , который указывает направление, в котором упорядочены ячейки таблицы, например, WD_TABLE_DIRECTION.LTR или WD_TABLE_DIRECTION.RTL .
Значение None указывает, что значение наследуется от иерархии стилей.
Свойства и методы объекта ячейки таблицы Cell .
- Cell.add_paragraph() добавляет абзац в ячейку,
- Cell.add_table() добавляет таблицу в ячейку,
- Cell.merge() объединяет ячейки в одну,
- Cell.paragraphs список объектов абзацев в ячейке,
- Cell.tables список таблиц в ячейке,
- Cell.text ВСЕ содержимое ячейки в виде строки текста,
- Cell.vertical_alignment вертикальное выравнивание,
- Cell.width ширина ячейки,
Cell.add_paragraph(text='', style=None) :
Метод Cell.add_paragraph() возвращает недавно добавленный абзац Paragraph в конец содержимого этой ячейки. Если присутствует текст text , то он добавляется к абзацу за один прогон Run . Если указан style , то применяется стиль для этого абзаца. Если стиль не указан или имеет значение None , то результат будет таким, как если бы был применен стиль с именем 'Normal' .
Обратите внимание, что на форматирование текста в ячейке может влиять стиль таблицы. Аргумент text может содержать символы табуляции \t , которые преобразуются в соответствующую XML-форму. Текст также может включать символы новой строки \n или возврата каретки \r , каждый из которых преобразуется в разрыв строки.
Cell.add_table(rows, cols) :
Метод Cell.add_table() возвращает недавно добавленную таблицу Paragraph в конец содержимого этой ячейки. После таблицы добавляется пустой абзац, так как спецификация MS Word требует, чтобы последним элементом в каждой ячейке был абзац.
Cell.merge(other_cell) :
Метод Cell.merge() возвращает объединенную ячейку, созданную путем охвата прямоугольной области, в которой эта ячейка и другая ячейка other_cell являются диагональными углами. Вызывает ошибку InvalidSpanError , если ячейки не определяют прямоугольную область.
Cell.paragraphs :
Свойство Cell.paragraphs представляет собой список объектов абзацев в ячейке. Ячейка таблицы должна содержать по крайней мере один элемент уровня блока и заканчиваться абзацем. По умолчанию новая ячейка содержит один абзац. Свойство только для чтения.
Cell.tables :
Свойство Cell.tables представляет собой список объектов таблиц в ячейке в порядке их появления. Свойство только для чтения.
Cell.text :
Свойство Cell.text представляет собой ВСЕ содержимое этой ячейки в виде строки текста. Назначение строки этому свойству заменяет все существующее содержимое одним абзацем Paragraph , содержащим назначенный текст, за один прогон Run .
Cell.vertical_alignment :
Свойство Cell.vertical_alignment возвращает/устанавливает вертикальное выравнивание ячейки как член перечисления WD_CELL_VERTICAL_ALIGNMENT или None .
Значение None указывает, что вертикальное выравнивание для этой ячейки унаследовано. Назначение None приводит к удалению явно определенного вертикального выравнивания и восстановлению наследования.
Cell.width :
Свойство Cell.width возвращает/устанавливает ширину этой ячейки в величине EMU или None , если ширина явно не задана.
При создании документа DOCX, часто встречается контент, который необходимо представить в виде аккуратной таблицы. Редактор MS Word неплохо справляется с этим. А вот как добавить таблицу при помощи модуля python-docx :
Пример добавления пустой таблицы, содержащей 2х2 ячейки:
Объект таблицы Table имеет несколько свойств и методов, которые необходимо вызвать, чтобы заполнить таблицу данными. В качестве базового дальнейшего действия, всегда можно получить доступ к ячейке таблицы, исходя из ее расположения в строке и столбце:
Этот код возвратит объект ячейки Cell , которая расположена справа в верхней строке таблицы. Обратите внимание, что индексы строк и столбцов начинаются с нуля, как в списке.
В полученный объект ячейки можно записать какие-нибудь данные:
Часто бывает проще получить доступ к ряду ячеек одновременно, например, при заполнении таблицы переменной длины из источника данных. Свойство таблицы Table.rows предоставляет доступ к отдельным строкам, каждая из которых имеет свойство Table.rows[i].cells . Свойство .cells как в строке, так и в столбце поддерживает доступ к ячейке по индексу (как с списку):
Последовательности Table.rows и Table.columns в таблице являются итерируемыми, следовательно можно использовать их непосредственно в цикле for . То же самое с последовательностями ячеек, например для первой строки таблицы Table.rows[0].cells или для первого столбца Table.columns[0].cells :
Если необходимо узнать количество строк или столбцов в таблице, то просто используйте функцию len() для соответствующей последовательности:
Также можно добавлять строки в таблицу постепенно, например:
Это может быть очень удобно для построения таблицы переменной длины:
То же самое работает для столбцов, хотя строить таблицу таким способом не удобно.
MS Word имеет набор предварительно отформатированных стилей таблиц, которые можно выбрать из его галереи стилей таблиц. Применить один из них к таблице можно следующим образом:
Обратите внимание, что имя стиля таблицы немного отличается от имени, отображаемого в пользовательском интерфейсе MS Word. Дефис, если он есть, то его необходимо удалить. Например, Light Shading - Accent 1 становится Light Shading Accent 1 .
Чтобы узнать название стиля таблицы, наведите указатель мыши на его эскиз в галерее стилей таблиц Word.
Важно. Встроенные стили хранятся в файле WordprocessingML под своим английским именем, например 'Table Grid' , и не зависят от локализации MS Word. Так как модуль python-docx работает с файлом WordprocessingML , то поиск стиля должен использовать английское имя. Если файл WordprocessingML не найден (MS Word не установлен, например в OS Linux) то модуль python-docx работает со своей версией этого файла. Что бы создать сопоставление между именами стилей на русском языке и именами на английском языке посетите эту ссылку.
Все стили таблиц можно посмотреть, выполнив код:
Извлечение табличных данных их документов DOCX.
При чтении существующего документа DOCX, все находящиеся в нем объекты таблиц Table группируются в последовательности Document.tables . Следовательно, что бы узнать количество таблиц в документе, нужно вызвать функцию len() для этой последовательности.
Доступ к объектам таблиц будем осуществлять по индексу последовательности Document.tables .
Документ электронной таблицы Excel называется рабочей книгой. Каждая книга может хранить некоторое количество листов. Лист, просматриваемый пользователем в данный момент, называется активным. Лист состоит из из столбцов (адресуемых с помощью букв, начиная с A) и строк (адресуемых с помощью цифр, начиная с 1).
Модуль OpenPyXL не поставляется вместе с Python, поэтому его предварительно нужно установить:
Чтение файлов Excel
А теперь небольшой скрипт:
Как получить другой лист книги:
Как сделать лист книги активным:
Как задать имя листа:
Объект Cell имеет атрибут value , который содержит значение, хранящееся в ячейке. Объект Cell также имеет атрибуты row , column и coordinate , которые предоставляют информацию о расположении данной ячейки в таблице.
К отдельной ячейке можно также обращаться с помощью метода cell() объекта Worksheet , передавая ему именованные аргументы row и column . Первому столбцу или первой строке соответствует число 1, а не 0:
Размер листа можно получить с помощью атрибутов max_row и max_column объекта Worksheet :
Чтобы преобразовать буквенное обозначение столбца в цифровое, следует вызвать функцию
Чтобы преобразовать цифровое обозначение столбуа в буквенное, следует вызвать функцию
Для вызова этих функций загружать рабочую книгу не обязательно.
Используя срезы объектов Worksheet , можно получить все объекты Cell , принадлежащие определенной строке, столбцу или прямоугольной области.
Выводим значения второй колонки:
Выводим строки с первой по третью:
Для доступа к ячейкам конкретной строки или столбца также можно воспользоваться атрибутами rows и columns объекта Worksheet .
Выводим значения всех ячеек листа:
Выводим значения второй строки (индекс 1):
Выводим значения второй колонки (индекс 1):
Запись файлов Excel
Метод create_sheet() возвращает новый объект Worksheet , который по умолчанию становится последним листом книги. С помощью именованных аргументов title и index можно задать имя и индекс нового листа.
Метод remove() принимает в качестве аргумента не строку с именем листа, а объект Worksheet . Если известно только имя листа, который надо удалить, используйте wb[sheetname] . Еще один способ удалить лист — использовать инструкцию del wb[sheetname] .
Не забудьте вызвать метод save() , чтобы сохранить изменения после добавления или удаления листа рабочей книги.
Запись значений в ячейки напоминает запись значений в ключи словаря:
Заполняем таблицу 3x3:
Можно добавлять строки целиком:
Стилевое оформление
Для настройки шрифтов, используемых в ячейках, необходимо импортировать функцию Font() из модуля openpyxl.styles :
Ниже приведен пример создания новой рабочей книги, в которой для шрифта, используемого в ячейке A1 , устанавливается шрифт Arial , красный цвет, курсивное начертание и размер 24 пункта:
Именованные стили применяются, когда надо применить стилевое оформление к большому количеству ячеек.
Добавление формул
Формулы, начинающиеся со знака равенства, позволяют устанавливать для ячеек значения, рассчитанные на основе значений в других ячейках.
Эта инструкция сохранит =SUM(B1:B8) в качестве значения в ячейке B9 . Тем самым для ячейки B9 задается формула, которая суммирует значения, хранящиеся в ячейках от B1 до B8 .
Формула Excel — это математическое выражение, которое создается для вычисления результата и которое может зависеть от содержимого других ячеек. Формула в ячейке Excel может содержать данные, ссылки на другие ячейки, а также обозначение действий, которые необходимо выполнить.
Использование ссылок на ячейки позволяет пересчитывать результат по формулам, когда происходят изменения содержимого ячеек, включенных в формулы. Формулы Excel начинаются со знака = . Скобки () могут использоваться для определения порядка математических операции.
Примеры формул Excel: =27+36 , =А1+А2-АЗ , =SUM(А1:А5) , =MAX(АЗ:А5) , =(А1+А2)/АЗ .
Хранящуюся в ячейке формулу можно читать, как любое другое значение. Однако, если нужно получить результат расчета по формуле, а не саму формулу, то при вызове функции load_workbook() ей следует передать именованный аргумент data_only со значением True .
Настройка строк и столбцов
С помощью модуля OpenPyXL можно задавать высоту строк и ширину столбцов таблицы, закреплять их на месте (чтобы они всегда были видны на экране), полностью скрывать из виду, объединять ячейки.
Настройка высоты строк и ширины столбцов
Объекты Worksheet имеют атрибуты row_dimensions и column_dimensions , которые управляют высотой строк и шириной столбцов.
Атрибуты row_dimension s и column_dimensions представляют собой значения, подобные словарю. Атрибут row_dimensions содержит объекты RowDimensions , а атрибут column_dimensions содержит объекты ColumnDimensions . Доступ к объектам в row_dimensions осуществляется с использованием номера строки, а доступ к объектам в column_dimensions — с использованием буквы столбца.
Для указания высоты строки разрешено использовать целые или вещественные числа в диапазоне от 0 до 409. Для указания ширины столбца можно использовать целые или вещественные числа в диапазоне от 0 до 255. Столбцы с нулевой шириной и строки с нулевой высотой невидимы для пользователя.
Объединение ячеек
Ячейки, занимающие прямоугольную область, могут быть объединены в одну ячейку с помощью метода merge_cells() рабочего листа:
Чтобы отменить слияние ячеек, надо вызвать метод unmerge_cells() :
Закрепление областей
Если размер таблицы настолько велик, что ее нельзя увидеть целиком, можно заблокировать несколько верхних строк или крайних слева столбцов в их позициях на экране. В этом случае пользователь всегда будет видеть заблокированные заголовки столбцов или строк, даже если он прокручивает таблицу на экране.
У объекта Worksheet имеется атрибут freeze_panes , значением которого может служить объект Cell или строка с координатами ячеек. Все строки и столбцы, расположенные выше и левее, будут заблокированы.
Значение атрибута freeze_panes | Заблокированные строки и столбцы |
---|---|
sheet.freeze_panes = 'A2' | Строка 1 |
sheet.freeze_panes = 'B1' | Столбец A |
sheet.freeze_panes = 'C1' | Столбцы A и B |
sheet.freeze_panes = 'C2' | Строка 1 и столбцы A и B |
sheet.freeze_panes = None | Закрепленные области отсутствуют |
Диаграммы
Модуль OpenPyXL поддерживает создание гистогорамм, графиков, а также точечных и круговых диаграмм с использование данных, хранящихся в электронной таблице. Чтобы создать диаграмму, необходимо выполнить следующие действия:
- создать объект Reference на основе ячеек в пределах выделенной прямоугольной области;
- создать объект Series , передав функции Series() объект Reference ;
- создать объект Chart;
- дополнительно можно установить значения переменных drawing.top , drawing.left , drawing.width , drawing.height объекта Chart , определяющих положение и размеры диаграммы;
- добавить объект Chart в объект Worksheet .
- Объект Worksheet , содержащий данные диаграммы.
- Два целых числа, представляющих верхнюю левую ячейку выделенной прямоугольной области, в которых содержатся данные диаграммы: первое число задает строку, второе — столбец; первой строке соответствует 1, а не 0.
- Два целых числа, представляющих нижнюю правую ячейку выделенной прямоугольной области, в которых содержатся данные диаграммы: первое число задает строку, второе — столбец.
Аналогично можно создавать графики, точечные и круговые диаграммы, вызывая методы:
При установке модуля надо вводить python-docx , а не docx (это другой модуль). В то же время при импортировании модуля python-docx следует использовать import docx , а не import python-docx .
Чтение документов MS Word
Файлы с расширением .docx обладают развитой внутренней структурой. В модуле python-docx эта структура представлена тремя различными типами данных. На самом верхнем уровне объект Document представляет собой весь документ. Объект Document содержит список объектов Paragraph , которые представляют собой абзацы документа. Каждый из абзацев содержит список, состоящий из одного или нескольких объектов Run , представляющих собой фрагменты текста с различными стилями форматирования.
Получаем весь текст из документа:
Стилевое оформление
В документах MS Word применяются два типа стилей: стили абзацев, которые могут применяться к объектам Paragraph , стили символов, которые могут применяться к объектам Run . Как объектам Paragraph , так и объектам Run можно назначать стили, присваивая их атрибутам style значение в виде строки. Этой строкой должно быть имя стиля. Если для стиля задано значение None , то у объекта Paragraph или Run не будет связанного с ним стиля.
Стили абзацев
- Normal
- Body Text
- Body Text 2
- Body Text 3
- Caption
- Heading 1
- Heading 2
- Heading 3
- Heading 4
- Heading 5
- Heading 6
- Heading 7
- Heading 8
- Heading 9
- Intense Quote
- List
- List 2
- List 3
- List Bullet
- List Bullet 2
- List Bullet 3
- List Continue
- List Continue 2
- List Continue 3
- List Number
- List Number 2
- List Number 3
- List Paragraph
- Macro Text
- No Spacing
- Quote
- Subtitle
- TOCHeading
- Title
Стили символов
- Emphasis
- Strong
- Book Title
- Default Paragraph Font
- Intense Emphasis
- Subtle Emphasis
- Intense Reference
- Subtle Reference
Атрибуты объекта Run
Отдельные фрагменты текста, представленные объектами Run , могут подвергаться дополнительному форматированию с помощью атрибутов. Для каждого из этих атрибутов может быть задано одно из трех значений: True (атрибут активизирован), False (атрибут отключен) и None (применяется стиль, установленный для данного объекта Run ).
- bold — Полужирное начертание
- underline — Подчеркнутый текст
- italic — Курсивное начертание
- strike — Зачеркнутый текст
Изменим стили для всех параграфов нашего документа:
А теперь восстановим все как было:
Изменим форматирвание объектов Run второго абзаца:
Запись докуменов MS Word
Добавление абзацев осуществляется вызовом метода add_paragraph() объекта Document . Для добавления текста в конец существующего абзаца, надо вызвать метод add_run() объекта Paragraph :
Оба метода, add_paragraph() и add_run() принимают необязательный второй аргумент, содержащий строку стиля, например:
Добавление заголовков
Вызов метода add_heading() приводит к добавлению абзаца, отформатированного в соответствии с одним из возможных стилей заголовков:
Аргументами метода add_heading() являются строка текста и целое число от 0 до 4. Значению 0 соответствует стиль заголовка Title .
Добавление разрывов строк и страниц
Чтобы добавить разрыв строки (а не добавлять новый абзац), нужно вызвать метод add_break() объекта Run . Если же требуется добавить разрыв страницы, то методу add_break() надо передать значение docx.enum.text.WD_BREAK.PAGE в качестве единственного аргумента:
Добавление изображений
Метод add_picture() объекта Document позволяет добавлять изображения в конце документа. Например, добавим в конец документа изображение kitten.jpg шириной 10 сантиметров:
Именованные аргументы width и height задают ширину и высоту изображения. Если их опустить, то значения этих аргументов будут определяться размерами самого изображения.
Доступ к стилям документа осуществляется с помощью атрибута Document.styles . Возвращаемый объект представляет собой последовательность, который хранит все встроенные в редактор MS Word, а так же созданные пользователем объекты стилей Style . Обращаться к этой последовательности можно как к словарю.
Важно. Встроенные стили хранятся в файле WordprocessingML под своим английским именем, например 'Heading 1' , и не зависят от локализации MS Word. Так как модуль python-docx работает с файлом WordprocessingML , то поиск стиля должен использовать английское имя. Если файл WordprocessingML не найден (MS Word не установлен, например в OS Linux) то модуль python-docx работает со своей версией этого файла. Что бы создать сопоставление между именами стилей на русском языке и именами на английском языке посетите эту ссылку.
Пользовательские стили, также известные как настраиваемые стили, не локализованы и доступны по имени, как оно отображается в пользовательском интерфейсе Word.
Используя свойство идентификации стиля Style.type и перечисление WD_STYLE_TYPE можно создавать подмножества определенных стилей. Например, этот код создаст список стилей абзаца:
Каждый из объектов документа DOCX: абзац Paragraph , прогон Run и таблица Table имеет атрибут стиля .style (например Paragraph.style ). Назначение этому атрибуту объекта стиля Style или имени стиля, применяет этот стиль соответствующему объекту:
Стиль Style также можно применить во время создания, используя либо объект стиля, либо его имя:
Добавление/удаление пользовательского стиля документа.
О стилях в модуле python-docx можно думать как об определении CSS-классов в начале HTML-документа, а потом их применении к HTML-тегам. Например, после создания абзаца Paragraph можно изменить отдельные свойства его стиля: шрифт (размер, название), форматирование параграфа (межстрочный интервал, отступы) и т.д. Так вот, лучше всего создать пользовательский стиль (подобно CSS-классу), который объединит эти свойства в какую-то группу, а потом применять его при добавлении абзацев.
Пользовательские стили создаются и добавляются (преимущественно сразу после создании объекта документа) при помощи метода Document.styles.add_style(name, style_type, builtin=False) , при этом, необходимо указать его уникальное (произвольное) имя name и тип, к которому относится создаваемый стиль style_type (задается перечислением WD_STYLE_TYPE ).
Важно! Стиль, созданный, для абзаца (с типом WD_STYLE_TYPE.PARAGRAPH ) нельзя применить, например, к таблице Table , так как тип стиля будет отличатся WD_STYLE_TYPE.TABLE .
Объект стиля можно удалить из документа, просто вызвав его метод doc.styles['ИмяСтиля'].delete() :
Изменение существующего стиля документа.
Изменение существующего стиля документа, рассмотрим на встроенном стиле по умолчанию Получить стиль по умолчанию для конкретного типа можно при помощи свойства doc.styles.default(style_type) :
Получим стиль абзаца по умолчанию:
Имя стиля по умолчанию для абзаца документа MS Word является Normal . Изменение настроек этого стиля в любом месте кода Python применит сделанные изменения ко всему документу DOCX.
Методы и свойства объекта Style .
- Style.base_style объект стиля, от которого наследуется этот стиль,
- Style.builtin возвращает True если этот стиль является встроенным,
- Style.delete() удаляет этот стиль из документа,
- Style.element XML-элемент, проксируемый объектом этого стиля,
- Style.name имя этого стиля в интерфейсе MS Word,
- Style.type тип этого стиля, как член перечисления WD_STYLE_TYPE ,
- Style.font объект Font этого стиля,
- Style.next_paragraph_style стиль, применяться к новому абзацу,
- Style.paragraph_format объект ParagraphFormat этого стиля.
Style.base_style :
Свойство Style.base_style возвращает/устанавливает объект стиля, от которого наследуется этот стиль, или None , если этот стиль не основан на другом стиле.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.builtin :
Свойство Style.builtin возвращает True если этот стиль является встроенным стилем. False указывает, что это пользовательский (определяемый пользователем) стиль. Свойство, только для чтения.
Обратите внимание, что это значение основано на наличии атрибута customStyle в XML, а не на конкретных знаниях о том, какие стили встроены в Word.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.delete() :
Метод Style.delete() удаляет это определение стиля из документа.
Обратите внимание, что вызов этого метода не удаляет и не изменяет стиль, применяемый к содержимому документа. Элементы содержимого, имеющие удаленный стиль, будут отображаться с использованием стиля по умолчанию, как и любое содержимое со стилем, не определенным в документе.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.element :
Свойство Style.element XML-элемент, проксируемый объектом этого стиля.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.name :
Свойство Style.name возвращает/устанавливает имя этого стиля в пользовательском интерфейсе MS Word.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.type :
Свойство Style.type возвращает/устанавливает соответствующий тип этого стиля, как член перечисления WD_STYLE_TYPE .
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.font :
Свойство Style.font это объект Font , предоставляющий доступ к свойствам форматирования символов для этого стиля, таким как имя и размер шрифта, цвет и т.д.
Примечание. Свойство доступно для объектов Paragraph.style , Run.style и Table.style .
Style.next_paragraph_style :
Свойство Style.next_paragraph_style это объект ParagraphFormat , представляющий стиль, который будет автоматически применяться к новому абзацу, вставленному после абзаца этого стиля.
Возвращает self , если стиль следующего абзаца не определен. Назначение None или self удаляет настройку, так что новые абзацы создаются с использованием того же стиля.
Примечание. Свойство доступно для ТОЛЬКО объектов Paragraph.style и Table.style .
Style.paragraph_format :
Свойство Style.paragraph_format это объект ParagraphFormat , представляющий доступ к свойствам форматирования абзаца для этого стиля, таким как отступ, межстрочный интервал и т. д.
Примечание. Свойство доступно для ТОЛЬКО объектов Paragraph.style и Table.style .
Читайте также: