Utwórz tabelę

Aspose.Words pozwala użytkownikom na tworzenie tabel w dokumencie od podstaw i zapewnia kilka różnych metod w tym celu. Ten artykuł przedstawia szczegóły dotyczące dodawania sformatowanych tabel do dokumentu przy użyciu każdej metody, jak również porównanie każdej metody na końcu artykułu.

Domyślne style tabeli

Nowo utworzona tabela otrzymuje wartości domyślne podobne do tych stosowanych w Microsoft Word:

Właściwość tabeli Domyślnie Aspose.Words
Border Style Single
Border Width 1/2 pt
Kolor granic Black
Left and Right Padding 5.4 pts
AutoFit Mode AutoFit to Window
Allow AutoFit True

Tworzenie tabeli z DocumentBuilder

W Aspose.Words, użytkownicy mogą utworzyć tabelę w dokumencie za pomocą DocumentBuilder. Podstawowy algorytm tworzenia tabeli jest następujący:

  1. Rozpocznij tabelę od StartTable
  2. Dodaj komórkę do tabeli używając InsertCell - automatycznie uruchamia nowy wiersz
  3. Opcjonalnie należy użyć CellFormat właściwość do określenia formatowania komórek
  4. Wstaw zawartość komórki używając odpowiedniej DocumentBuilder metody takie jak Writeln, InsertImage, i inne
  5. Powtarzać kroki 2- 4 aż do zakończenia wiersza
  6. Call EndRow aby zakończyć bieżący wiersz
  7. Opcjonalnie należy użyć RowFormat właściwość do określenia formatowania wierszy
  8. Powtarzać kroki 2- 7 aż do zakończenia tabeli
  9. Call EndTable aby zakończyć budowanie stołu

Proces tworzenia tabeli można wyraźnie zobaczyć na poniższym rysunku:

creating-table-process

Poniższy przykład kodu pokazuje jak utworzyć prostą tabelę używając DocumentBuilder z domyślnym formatowaniem:

Poniższy przykład kodu pokazuje jak utworzyć sformatowaną tabelę używając DocumentBuilder:

Poniższy przykład kodu pokazuje jak wstawić zagnieżdżoną tabelę używając DocumentBuilder:

Utwórz tabelę poprzez DOM (Document Object Model)

Można umieścić tabele bezpośrednio w DOM dodając nowy Table węzeł w określonym położeniu.

Należy pamiętać, że zaraz po utworzeniu węzła tabeli, sama tabela będzie całkowicie pusta, czyli nie zawiera jeszcze wierszy i komórek. Aby umieścić wiersze i komórki w tabeli, dodać odpowiedni Row oraz Cell węzły dziecięce do DOM.

Poniższy przykład kodu pokazuje, jak zbudować nową tabelę od podstaw poprzez dodanie odpowiednich węzłów dziecięcych do drzewa dokumentów:

Utwórz tabelę z HTML

Aspose.Words obsługuje wprowadzanie treści do dokumentu ze źródła HTML za pomocą InsertHtml Metoda. Wejście może być pełną stroną HTML lub tylko częściowym fragmentem.

Używając tego InsertHtml metoda, użytkownicy mogą umieścić tabele w dokumencie za pomocą tagów tabeli jak <table>, <tr>, <td>.

Poniższy przykład kodu pokazuje jak włożyć tabelę do dokumentu z łańcucha zawierającego znaczniki HTML:

Wstaw kopię istniejącej tabeli

Często trzeba stworzyć tabelę opartą na istniejącej tabeli w dokumencie. Najprostszym sposobem powielenia tabeli przy zachowaniu wszystkich formatowania jest sklonowanie węzła tabeli za pomocą deepClone Metoda.

Tę samą technikę można zastosować do dodania kopii istniejącego wiersza lub komórki do tabeli.

Poniższy przykład kodu pokazuje jak skopiować tabelę przy użyciu konstruktorów węzłów:

Poniższy przykład kodu pokazuje jak sklonować ostatni wiersz tabeli i dołączyć go do tabeli:

Jeśli patrzysz na tworzenie tabel w dokumencie, który dynamicznie rośnie z każdym rekordem ze źródła danych, to powyższa metoda nie jest zalecana. Zamiast tego, pożądane wyjście jest łatwiej osiągnąć za pomocą Mail merge z regionami. Można dowiedzieć się więcej o tej technice w Mail Merge z regionami sekcja.

Porównaj sposoby tworzenia tabeli

Aspose.Words zawiera kilka metod tworzenia nowych tabel w dokumencie. Każda metoda ma swoje zalety i wady, więc wybór, którego używać często zależy od konkretnej sytuacji.

Przyjrzyjmy się bliżej tym sposobom tworzenia tabel i porównujmy ich zalety i wady:

Metoda Korzyści Uszkodzenia
Via DocumentBuilder Standardowa metoda wprowadzania tabel i innych treści dokumentów Czasami trudno jest stworzyć wiele odmian tabel w tym samym czasie z tej samej instancji konstruktora
Via DOM Pasuje lepiej z otaczającym kodem, który tworzy i wprowadza węzły bezpośrednio do DOM bez użycia DocumentBuilder Tabela jest tworzona “pusty”: przed wykonaniem większości operacji, należy zadzwonić EnsureMinimum do tworzenia brakujących węzłów dziecięcych
Z HTML Można utworzyć nową tabelę ze źródła HTML przy użyciu tagów takich jak <table>, <tr>, <td> Nie wszystkie możliwe Microsoft Word formaty tabel mogą być stosowane do HTML
Klonowanie istniejącej tabeli Możesz utworzyć kopię istniejącej tabeli zachowując wszystkie wiersze i formatowanie komórek Przed przygotowaniem tabeli do użycia należy usunąć odpowiednie węzły dziecięce