LaTeX oferuje szereg narzędzi do tworzenia i dostosowywania tabel. W tej serii będziemy używać środowiska tabelarycznego i tabularx do tworzenia i dostosowywania tabel.
Podstawowy stół
Aby utworzyć tabelę, po prostu określ środowisko Begin{tabular}{columns}
begin{tabular}{c|c} Release &Codename \ hline Fedora Core 1 &Yarrow \ Fedora Core 2 &Tettnang \ Fedora Core 3 &Heidelberg \ Fedora Core 4 &Stentz \ end{tabular}
W powyższym przykładzie „{c|c}” w nawiasach klamrowych odnosi się do położenia tekstu w kolumnie. Poniższa tabela podsumowuje argument pozycyjny wraz z opisem.
Pozycja | Argument |
---|---|
C | Umieść tekst na środku |
ty | Pozycja tekstu wyrównanego do lewej |
R | Umieść wyjustowany tekst po prawej stronie |
p{szerokość} | Wyrównaj tekst do góry komórki |
m{ancho} | Wyrównuje tekst do środka komórki. |
b{szerokość} | Wyrównaj tekst do dołu komórki |
Zarówno m{width}, jak i b{width} wymagają określenia pakietu tablicy w preambule.
Korzystając z powyższego przykładu, omówmy ważne punkty i opisz więcej opcji, które zobaczysz w tej serii
Opcja | Opis |
---|---|
& | Definiuje każdą komórkę, ampersand jest używany tylko w drugiej kolumnie |
\ | To kończy rząd i rozpoczyna nowy rząd |
| | Określa pionową linię w tabeli (opcjonalnie) |
glina | Określa linię poziomą (opcjonalnie) |
*{numer}{formularz} | Jest to przydatne, gdy masz wiele kolumn i jest skutecznym sposobem na ograniczenie powtórzeń |
|| | Określa podwójną linię pionową |
Dostosowywanie stołu
Teraz, gdy znamy już niektóre dostępne opcje, utwórzmy tabelę, korzystając z opcji opisanych w poprzedniej sekcji.
begin{tabular}{*{3}{|l|}} hline textbf{Version} &textbf{Code name} &textbf{Year released} \ hline Fedora 6 &Zod &2006 \ hline Fedora 7 &Moonshine &2007 \ hline Fedora 8 &Werewolf &2007 \ hline end{tabular}
Zarządzanie długimi tekstami
Jeśli w LaTeX-ie kolumna zawiera dużo tekstu, nie będzie on dobrze sformatowany i nie będzie wyglądał dobrze.
Poniższy przykład pokazuje długość formatu tekstu. W preambule użyjemy „tekstu ukrytego”, abyśmy mogli stworzyć przykładowy tekst.
begin{tabular}{|l|l|}hline Summary &Description \ hline Test &blindtext \ end{tabular}
Jak widać tekst przekracza szerokość strony; Istnieje jednak kilka możliwości pokonania tego wyzwania.
- Określ szerokość kolumny, na przykład {5cm}
- Użyj środowiska tabularx, wymaga to pakietu tabularx w preambule.
Zarządzaj długim tekstem za pomocą szerokości kolumny
Określając szerokość kolumny, tekst będzie zawijany do szerokości pokazanej w poniższym przykładzie.
begin{tabular}{|l|m{14cm}|} hline Summary &Description \ hline Test &blindtext \ hline end{tabular}vspace{3mm}
Zarządzaj długim tekstem za pomocą tabularx
Zanim będziemy mogli skorzystać z tabularx, musimy dodać go w preambule. Tabularx bierze następujący przykład
**begin{tabularx}{width}{columns}** begin{tabularx}{textwidth}{|l|X|} hline Summary & Tabularx Description\ hline Text &blindtext \ hline end{tabularx}
Zwróć uwagę, że kolumna, w której ma się zmieścić długi tekst, ma określoną dużą literę „X”.
Wiele wierszy i wiele kolumn
Są chwile, kiedy będziesz musiał scalić wiersze i/lub kolumny. W tej sekcji opisano, jak to osiągnąć. Aby użyć wielu wierszy i wielu kolumn, dodaj wiele wierszy do preambuły.
Multifila
Multirow przyjmuje następujący argument multirow{number_of_rows}{width}{text}, spójrzmy na następujący przykład.
begin{tabular}{|l|l|}hline Release &Codename \ hline Fedora Core 4 &Stentz \ hline multirow{2}{*}{MultiRow} &Fedora 8 \ &Werewolf \ hline end{tabular}
W powyższym przykładzie określono dwa wiersze, „*” mówi LaTeXowi, aby automatycznie zarządzał rozmiarem komórki.
wielokolumnowy
Argument wielokolumnowy to wielokolumna{number_of_columns}{położenie_komórki}{tekst}, poniższy przykład ilustruje wielokolumny.
begin{tabular}{|l|l|l|}hline Release &Codename &Date \ hline Fedora Core 4 &Stentz &2005 \ hline multicolumn{3}{|c|}{Mulit-Column} \ hline end{tabular}
Praca z kolorami
Kolory można przypisać do tekstu, pojedynczej komórki lub całego wiersza. Dodatkowo możemy ustawić alternatywne kolory dla każdego rzędu.
Zanim będziemy mogli dodać kolor do naszych tabel, musimy uwzględnić w preambule usepackage[table]{xcolor}. Możemy również zdefiniować kolory, korzystając z poniższego odniesienia do kolorówkolor lateksulub dodanie wykrzyknika po kolorze poprzedzonym cieniem od 0 do 100. Na przykład szary!30
definecolor{darkblue}{rgb}{0.0, 0.0, 0.55} definecolor{darkgray}{rgb}{0.66, 0.66, 0.66}
Poniższy przykład zademonstrował to na tabeli z naprzemiennymi kolorami, rowcolors przyjmują następujące opcje rowcolors{row_start_color}{even_row_color}{odd_row_color}.
rowcolors{2}{darkgray}{gray!20} begin{tabular}{c|c} Release &Codename \ hline Fedora Core 1 &Yarrow \ Fedora Core 2 &Tettnang \ Fedora Core 3 &Heidelberg \ Fedora Core 4 &Stentz \ end{tabular}
Oprócz powyższego przykładu można użyć rowcolor do określenia koloru każdego wiersza. Ta metoda działa najlepiej, gdy istnieje wiele wierszy. Poniższe przykłady pokazują wpływ użycia kolorów wierszy z wieloma wierszami i sposoby naprawienia tego problemu.
Jak widać, w pierwszym wierszu widocznych jest wiele wierszy, aby to naprawić, musimy wykonać następujące czynności.
begin{tabular}{|l|l|}hline rowcolor{darkblue}textsc{color{white}Release} &textsc{color{white}Codename} \ hline rowcolor{gray!10}Fedora Core 4 &Stentz \ hline rowcolor{gray!40}&Fedora 8 \ rowcolor{gray!40}multirow{-2}{*}{Multi-Row} &Werewolf \ hline end{tabular}
Przyjrzyjmy się zmianom, które wprowadzono, aby rozwiązać problem wielu wierszy z alternatywnymi kolorami.
- Pierwszy rząd rozpoczął się nad rzędem wielokrotnym.
- Zmieniono liczbę wierszy z 2 na -2, co oznacza czytanie od góry
- rowcolor został określony dla każdego wiersza, co ważniejsze, wiele wierszy musi mieć ten sam kolor, aby można było uzyskać pożądane wyniki.
Ostatnia uwaga dotycząca koloru, aby zmienić kolor kolumny, należy utworzyć nowy typ kolumny i zdefiniować kolor. Poniższy przykład ilustruje sposób definiowania nowego koloru kolumny.
newcolumntype{g}{>{columncolor{darkblue}}l}
Rozbijmy to:
- newcolumntype{g}: definiuje literę g jako nową kolumnę
- {>{columncolor{darkblue}}l}: tutaj wybieramy pożądany kolor, a l nakazuje wyjustowanie kolumny, można to zastąpić kor
begin{tabular}{g|l} textsc{Release} &textsc{Codename} \ hline Fedora Core 4 &Stentz \ &Fedora 8 \ multirow{-2}{*}{Multi-Row} &Werewolf \ end{tabular}
Stół krajobrazowy
Może się zdarzyć, że Twój stół będzie miał wiele kolumn i nie będzie elegancko komponował się z portretem. Dzięki obrotowemu pakietowi w preambule będziesz mógł stworzyć stolik boczny. Poniższy przykład to demonstruje.
W przypadku tabeli poziomej użyjemy środowiska bocznego stabilnego i dodamy do niego środowisko tabelaryczne, określimy także dodatkowe opcje.
- centrowanie, aby umieścić tabelę na środku strony
- caption{}, aby nadać nazwę naszej tabeli
- label{} pozwala nam odwoływać się do tabeli w naszym dokumencie
begin{sidewaystable} centering caption{Sideways Table} label{sidetable} begin{tabular}{ll} rowcolor{darkblue}textsc{color{white}Release} &textsc{color{white}Codename} \ rowcolor{gray!10}Fedora Core 4 &Stentz \ rowcolor{gray!40} &Fedora 8 \ rowcolor{gray!40}multirow{-2}{*}{Multi-Row} &Werewolf \ end{tabular}vspace{3mm} end{sidewaystable}
Zestawienia w tabelach
Aby dołączyć listę do tabeli, możesz użyć tabularx i dołączyć listę do kolumny, w której określono X. Inną opcją będzie użycie tabeli, ale musisz określić szerokość kolumny.
Lista tabelaryczna
begin{tabularx}{textwidth}{|l|X|} hline Fedora Version &Editions \ hline Fedora 32 &begin{itemize}[noitemsep] item CoreOS item Silverblue item IoT end{itemize} \ hline end{tabularx}vspace{3mm}
Lista tabelaryczna
begin{tabular}{|l|m{6cm}|}hline Fedora Version &Editions \ hline Fedora 32 &begin{itemize}[noitemsep] item CoreOS item Silverblue item IoT end{itemize} \ hline end{tabular}
Wniosek
LaTeX oferuje wiele sposobów dostosowywania tabeli za pomocą tabelarycznych i tabularx. Możesz także dodać tabelaryczne i tabularx do środowiska tabeli (begintable), aby dodać nazwę tabeli i umieścić tabelę.
Pakiety stosowane w tej serii to:
usepackage{fullpage} usepackage{blindtext} % add demo text usepackage{array} % used for column positions usepackage{tabularx} % adds tabularx which is used for text wrapping usepackage{multirow} % multi-row and multi-colour support usepackage[table]{xcolor} % add colour to the columns usepackage{rotating} % for landscape/sideways tables
Dodatkowa lektura
To była lekcja średniozaawansowana na stołach. Aby uzyskać bardziej zaawansowane informacje na temat tabel i ogólnie języka LaTex, możesz przejść doWikiLaTeX.