\tabular
i \array
) -- na lepsze. Wskazane jest dołączenie pakietu
w przypadku używania środowisk:
tabular
, array
, tabularx
, longtable
i supertabular
.
Definicja nowego typu kolumny:
\newcolumntype{x }[n ]{preambuła }
gdzie
#1
#2
, ...),
W specyfikacji makropolecenia \newcolumntype
oraz w definicji
preambuły tablicy mogą być użyte następujące określenia (w preambule tablicy
może znaleźć się oczywiście nowy, zdefiniowany poleceniem
\newcolumntype
typ).
l | dosunięcie tekstu do lewej |
r | dosunięcie tekstu do prawej |
c | centrowanie |
m{width } | Definiuje kolumnę o szerokości
width .
Środek celi tej kolumny (połowa wysokości) pokrywa się
ze środkiem celi kolumny sąsiedniej
(porównaj; cela bieżąca i sąsiednia). Odpowiednik:
\parbox{width } ; tekst jest łamany
na szerokości width . |
p{width } | Równoważna:
\parbox[t]{width } .
Pozycjonowanie w/g szczytu celi. |
b{width } | Równoważna
\parbox[b]{width } .
Pozycjonowanie w/g dołu celi. |
>{macro } | Może być użyta przed jednym z
następujących typów: l , r ,
c , p , m lub
b .
polecenie macro będzie wykonywana zawsze
przed rozpoczęciem cel w tak określonej
kolumnie. |
<{macro } | Może być użyta po jednym z
następujących typów: l , r ,
c , p , m lub
b .
Polecenie macro będzie wykonywana zawsze
po zakończeniu
cel w tak określonej kolumnie. |
| | Wstawienie linii pionowej jako separatora kolumn; odległość między kolumnami zostanie zwiększona o szerokość linii (w odróżnieniu od oryginalnej definicji tabeli). |
@{macro } | Może być użyte w dowolnym
miejscu preambuły zamiast | .
Polecenie macro zostanie wywołane między
kolumnami (kasuje normalną
odległość między kolumnami). |
!{macro } | Może być użyte w dowolnym
miejscu preambuły zamiast
| .
Polecenie macro zostanie wywołane
między odpowiednimi kolumnami (w odróżnieniu od
oryginalnej
makroinstrukcji @{...} nie kasuje normalnej
odległości między kolumnami). |
*{n }{decl } |
n -- krotne powtórzenie
decl ; gdzie
decl jest ciągiem poprzednio określonych
parametrów. Np.
*{3}{c} oznacza trzy kolumny centrowane. |
Parametry którymi można regulować sposób budowania tabeli:
Polecenie | opis |
---|---|
\arraycolsep | połowa szerokości odstępu między kolumnami
tablicy w środowisku matematycznym (array )
(domyślnie 5pt) |
\tabcolsep | połowa szerokości odstępu między kolumnami tablicy (domyślnie 6pt) |
\arrayrulewidth | szerokość pionowej linii separującej kolumny (o ile jest używana -- domyślnie 0.4pt) |
\doublerulesep | odległość między dwoma liniami pionowymi stanowiącymi separator kolumn (domyślnie 2pt) |
\arraystretch | ,,mnożnik'' odstępu między
wierszami tablicy
(np.
\renewcommand{\arraystretch}{1.5}
zwiększa odstęp o 50%) |
\extrarowheight | dodatkowy odstęp między liniami (domyślnie 0pt) |
Uwaga
Niektóre polecenia (np. \raggedright
) zmieniają definicje
polecenia \\
; tak więc specyfikacja
typu ostatniej kolumny jako:
>{\raggedleft}p{20mm}
może spowodować błąd. Możemy temu zapobiec definiując makroinstrukcję
odtwarzającą definicję polecenia \\
\newcommand{\PreserveBackslash}[1]%
{\let\temp=\\#1\let\\=\temp}
\let\PBS=\PreserveBackslash
Argumentem pierwszego polecenia jest inne polecenie. Przed jego
wykonaniem jest wykonywane makropodstawienie definicji \\
na zmienną \temp
,
następnie wykonanie polecenia i odtworzenie poprzedniej definicji
\\
z zachowanej zmiennej \temp
.
Drugie polecenie utożsamia dla wygody
(krótsza nazwa) zmienną \PBS
z utworzonym poleceniem \PreserveBackslash
. Poprawna definicja
ostatniej kolumny będzie wyglądała teraz następująco:
>{\PBS\raggedleft}p{20mm}
Uwaga:
W związku z realizacją tabeli występuje efekt uboczny ---
blokowane jest przenoszenie wyrazów (hyphenation) dla pierwszego
wyrazu w celi. Efekt możemy skompensować
wstawiając pustą przestrzeń o długości 0pt na początku celi
(wykorzystując możliwości formowania preambuły tabeli) np.
>{\PBS\raggedleft\hspace{0pt}}p{20mm}
Pakiet jest dostępny standardowo w dystrybucjach LaTeX, a także
pod adresem:
ftp://ftp.gust.org.pl/TeX/macros/latex/required/tools/array.dtx
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.