Konwertery

Konwertery

Aspose.Words FOSS for Python używa specjalistycznych klas konwerterów do przekształcania wewnętrznego modelu dokumentu w formaty wyjściowe. ParagraphConverter obsługuje tekst i formatowanie, TableConverter obsługuje struktury tabel, a ListHandler zarządza formatowaniem list.


Konwerter akapitów

ParagraphConverter przekształca akapity dokumentu do docelowego formatu wyjściowego. Analizuje formatowanie akapitu, stylizację na poziomie run oraz zawartość inline.

MetodaOpis
ParagraphConverter.get_paragraph_info()Wyodrębnij informacje o formatowaniu z akapitu
ParagraphConverter.get_run_formatting()Pobierz szczegóły formatowania dla fragmentu tekstu
ParagraphConverter.format_text()Zastosuj formatowanie do treści tekstowej

Konwerter tabel

TableConverter konwertuje tabele dokumentu do formatu docelowego (takiego jak tabele Markdown).

MetodaOpis
TableConverter.convert()Konwertuj element tabeli do formatu wyjściowego

Obsługa listy

ListHandler zarządza stanem listy podczas konwersji dokumentu, śledząc zagnieżdżenie list, znaczniki i formatowanie.

MetodaOpis
ListHandler.set_reader()Ustaw czytnik dokumentu dla kontekstu listy
ListHandler.reset()Zresetuj stan śledzenia listy
ListHandler.get_list_info()Pobierz szczegóły elementu listy dla akapitu
ListHandler.format_list_item()Formatuj element listy z markerem i wcięciem
ListHandler.break_list()Zasygnalizuj koniec sekwencji listy

Wskazówki i najlepsze praktyki

  • Konwertery są używane wewnętrznie przez potok eksportu — większość programistów korzysta zamiast tego z Document.save()
  • ParagraphConverter.format_text() respektuje kontekst bloków kodu, aby uniknąć stosowania formatowania inline wewnątrz fragmentów kodu
  • ListHandler utrzymuje stan pomiędzy kolejnymi akapitami listy — wywołaj reset() przy rozpoczynaniu nowej sekcji dokumentu

Typowe problemy

ProblemPrzyczynaRozwiązanie
Niewyrównane kolumny tabeliTabela wejściowa ma scalone komórkiTableConverter obsługuje proste tabele; scalone komórki mogą powodować nieoczekiwany wynik
Uszkodzone numerowanie listyStan listy nie jest resetowany pomiędzy sekcjamiWywołaj ListHandler.reset() na granicach sekcji

Podsumowanie odniesienia API

Klasa / MetodaOpis
ParagraphConverter.get_paragraph_info()Wyodrębnij formatowanie akapitu
ParagraphConverter.get_run_formatting()Pobierz formatowanie na poziomie run
ParagraphConverter.format_text()Zastosuj formatowanie do tekstu
TableConverter.convert()Konwertuj tabelę do formatu wyjściowego
ListHandler.set_reader()Ustaw kontekst czytnika dokumentu
ListHandler.get_list_info()Pobierz szczegóły elementu listy
ListHandler.format_list_item()Formatuj element listy
 Polski