Конвертеры

Конвертеры

Конвертеры

Aspose.Words FOSS for Python использует специализированные классы конвертеров для преобразования внутренней модели документа в форматы вывода. ParagraphConverter обрабатывает текст и форматирование, TableConverter обрабатывает структуры таблиц, а ListHandler управляет форматированием списков.


Конвертер абзацев

ParagraphConverter преобразует абзацы документа в целевой формат вывода. Он проверяет форматирование абзацев, стилизацию на уровне пробегов и встроенное содержимое.

МетодОписание
ParagraphConverter.get_paragraph_info()Извлечь информацию о форматировании из абзаца
ParagraphConverter.get_run_formatting()Получить детали форматирования для текстового фрагмента
ParagraphConverter.format_text()Применить форматирование к текстовому содержимому

Конвертер таблиц

TableConverter преобразует таблицы документа в целевой формат (например, таблицы Markdown).

МетодОписание
TableConverter.convert()Преобразовать элемент таблицы в формат вывода

Обработчик списка

ListHandler управляет состоянием списка во время преобразования документа, отслеживая вложенность списков, маркеры и форматирование.

МетодОписание
ListHandler.set_reader()Установить читатель документа для контекста списка
ListHandler.reset()Сбросить состояние отслеживания списка
ListHandler.get_list_info()Получить детали элемента списка для абзаца
ListHandler.format_list_item()Отформатировать элемент списка с маркером и отступом
ListHandler.break_list()Сигнализировать о конце последовательности списка

Советы и лучшие практики

  • Конвертеры используются внутри экспортного конвейера — большинство разработчиков взаимодействуют с Document.save() вместо этого
  • ParagraphConverter.format_text() учитывает контекст блока кода, чтобы избежать применения встроенного форматирования внутри фрагментов кода
  • ListHandler сохраняет состояние между последовательными абзацами списка — вызывайте reset() при начале нового раздела документа

Общие проблемы

IssueCauseFix
Несоответствие столбцов таблицыВходная таблица содержит объединённые ячейкиTableConverter обрабатывает простые таблицы; объединённые ячейки могут приводить к неожиданному выводу
Неправильная нумерация спискаСостояние списка не сбрасывается между разделамиВызовите ListHandler.reset() на границах разделов

Сводка справочного API

Класс / МетодОписание
ParagraphConverter.get_paragraph_info()Извлечь форматирование абзаца
ParagraphConverter.get_run_formatting()Получить форматирование уровня run
ParagraphConverter.format_text()Применить форматирование к тексту
TableConverter.convert()Преобразовать таблицу в формат вывода
ListHandler.set_reader()Установить контекст чтения документа
ListHandler.get_list_info()Получить детали элемента списка
ListHandler.format_list_item()Форматировать элемент списка
 Русский