Pakiet (v.3.0 -- znacznie zmodyfikowany)
zmienia definicje standardowego polecenia \caption
tworzącego opisy obiektów ruchomych
(standardowo: figure
i table
). Zdefiniowano polecenia
pozwalające na tworzenie wzorców lub bezpośrednie kształtowanie podpisów.
Za jego pomocą możemy zdefiniować sposób opisu nowych obiektów tworzonych
za poleceniami pakietu float, współpracuje również
z pakietami subfig (który jest swego rodzaju
nakładką) i~starszym od niego
subfigure.
Polecenie służy do tworzenia podpisów pod obiektami ruchomymi
(a także środowiska longtable), moża je wywołać na kilka
sposobów:
\caption{opis}
postać najczęściej spotykana; tekst
opisu jest identyczny w spisie (o ile taki jest tworzony) i w obiekcie,
podpis jest opatrzony etykietą (o ile nie zadysponowano inaczej)
\caption[wersja opisu do spisu obiektów]{opis}
postać używana jeśli opis w spisie objektów ma być inny niż w obiekcie;
podpis jest opatrzony etykietą (o ile nie zadysponowano inaczej)
\caption*{opis}
opis nie jest wstawiany do spisu obiektów i nie jest opatrywany etykietą
\caption[]{opis}
opis nie jest wstawiany do spisu obiektów, ale jest on opatrywany etykietą
\caption*[]{opis}
opis nie jest wstawiany do spisu obiektów i nie jest opatrywany etykietą
Polecenie \caption zawsze inkrementuje licznik obiektów.
Zdefiniowano też polecenie \captionof słuzące do
sformatowania tekstu, analogicznie jak obiekt ruchomy:
\captionof{typ obiektu}{tekst opisu}
\captionof{typ obiektu}[tekst do spisu]{tekst opisu}
\captionof{typ obiektu}[]{tekst opisu}
\captionof{typ obiektu}*[]{tekst opisu}
\captionof{typ obiektu}*{tekst opisu}
gdzie typ obiektu jest zdefiniowanym obiektem ruchomym --
polecenie inkrementuje licznik skojarzony z tym typem (patrz też pakiet capt-of).
Dodatkowo zdefiniowano polecenie \ContinuedFloat, które powoduje że nie jest inkrementowany licznik obiektów (powinno ono być użyte przed poleceniem \caption). Wszystkie inne aspekty formatowania i etykietowania są zachowane.
W nowej wersji pakietu unowocześniono sposób określania
parametrów składu podpisów z modyfikacji kodu na parametryczny (dla
kompatybilności pozostawiono również stary sposób). Parametrom można nadawać
wartości w dwu momentach: przy poleceniu ładowania pakietów np.:
\usepackage[margin=10pt, font={small,it}, labelfont=bf]{caption}lub za pomocą polecenia
\captionsetup
(nie wszystkie parametry)
\usepackage{caption} \captionsetup{margin=10pt, font={small,it}, labelfont=bf}dyspozycje będą dotyczyły podpisów obiektów wszystkich typów; lub
\captionsetup[nazwa typu obiektu]{margin=10pt, font={small,it}, labelfont=bf}
Wartością parametru może być pojedyncza wartość lub lista wartości (ujęta w
nawiasy {}, wartości oddzielone przecinkiem, w przypadku wartości
będących w sprzeczności brana jest wartość ostatnia na liście) -- w przypadku parametru
w którym nie przewidziano wartości (wartość logiczna) nie jest sprawdzana
poprawność, a w pozostałych przypadkach wartość jest sprawdzana dopiero w momencie
użycia polecenia \caption
.
Poniższe parametry mogą przyjmować wartości logiczne on lub off i deklarują współdziałanie (lub nie) z dodatkowymi pakietami. Powinny one być załadowane przed pakietem caption. Ustawienie wartości na off może spowodować, że definicja makroinstrukcji \caption nie zostanie redefiniowana (mechanizmy pakietu caption nie zadziałają).
Parametr | Opis |
---|---|
float | współpraca z pakietem float |
longtable | współpraca z pakietem longtable |
rotating | współpraca z pakietem rotating |
sidecap | współpraca z pakietem sidecap |
supertabular | współpraca z pakietem supertabular |
Parametr | Wartości | Opis |
---|---|---|
font | zmiana cech pisma całego podpisu (również etykiety) | default | nic nie zmienia -- cechy pisma pozostają bez zmian, takie jak określono poprzednio | scriptsize | zmiana wielkości na scriptsize |
footnotesize | zmiana wielkości na footnotesize |
small | zmiana wielkości na small |
normalsize | zmiana wielkości na normalsize |
large | zmiana wielkości na large |
Large | zmiana wielkości na Large |
up | zmiana kroju na upshape |
it | zmiana kroju na itshape |
sl | zmiana kroju na slshape |
sc | zmiana kroju na scshape |
md | zmiana kroju na mdseries |
bf | zmiana kroju na bfseries |
rm | zmiana kroju na rmfamily |
sf | zmiana kroju na sffamily |
tt | zmiana kroju na ttfamily |
labelfont | wartości jw, ale zmiana tylko cech pisma etykiety; cechy niezdefiniowane są dziedziczone z parametru font | |
textfont | wartości jw, ale zmiana tylko cech pisma objaśnienia; cechy niezdefiniowane są dziedziczone z parametru font | |
margin | dimen | wielkość lewego i prawego marginesu podpisu |
width | dimen | szerokość pola przeznaczonego na podpis |
parskip | dimen | odległość między akapitami, jeśli podpis
składa się z wielu akapitów; jeśli wpis do spisu obiektów jest tożsamy
z podpisem to w przypadku podpisu wieloakapitowego generowany jest błąd
-- wymagane jest aby podpis w spisie obiektów był jednoakapitowy (parametr opcjonalny polecenia
\caption |
format | sposób formatowania opisu. Do definiowania
nowych sposobów formatowania służy polecenie \DeclareCaptionFormat{nazwa}{ciąg poleceń} Do wnęrza drugiego parametru (zawierającego kod formatujący) są przekazywane: jako #1 -- etykieta, #2 -- separator etykiety i #3 -- tekst opisu; np.: \DeclareCaptionFormat{default}{#1#2#3\par} | |
default | łamanie ,,w ciągu'' | |
hang | efekt wyróżnionego pola etykiety, tekst opisu jest składany w polu o szerokości pomniejszonej o szerokość etykiety (i ewentualnie o wielkość marginesów lub skład na polu o szerokości określonej przez parametr width | |
belowskip | dimen | dodatkowa odległość pod podpisem (patrz parametr position) |
aboveskip | dimen | dodatkowa odległość nad podpisem (patrz parametr position) |
indention | dimen | dodatkowy margines (może być ujemny) względem szerokości etykiety (ma senes w przypadku formatu typu hang) -- ustawienie różnych wartości indention i hangindent może dać efekt wcięcia akapitowego dla dalszych akapitów |
hangindent | dimen | dodatkowy margines (może być ujemny) względem szerokości etykiety (ma senes w przypadku formatu typu hang) -- dotyczy tylko pierwszego (począwszy od drugiej linii) akapitu podpisu, jeżeli podpis jest jednoakapitowy jest równoważny wartości indention |
position | deklaruje położenie podpisu | |
bottom | deklaruje, że podpis będzie na dole obiektu | |
top | deklaruje, że podpis będzie na górze obiektu (odwraca znaczenie parametrów belowskip i aboveskip | |
labelformat | sposób formatowania etykiety.
Do definiowania
nowych sposobów formatowania służy polecenie \DeclareCaptionLabelFormat{nazwa}{ciąg poleceń} Do wnęrza drugiego parametru (zawierającego kod formatujący) są przekazywane: jako #1 -- nazwa etykiety, #2 -- numer obiektu; np.: \DeclareCaptionLabelFormat{simple}{\bothIfFirst{#1}{\nobreakspace}#2} | |
default | pojawia się etykieta (nazwa obiektu) i numer | |
empty | etykieta jest pusta (pojawi się tylko opis); w tym wypadku należy parametrowi labelsep przypisać wartość none | |
simple | pojawia się etykieta (nazwa obiektu) i numer | |
parens | pojawia się etykieta (nazwa obiektu) i numer ujęty w nawaisy () | |
labelsep | obiekt wstawiany po etykiecie.
Do definiowania
nowych separatorów służy polecenie \DeclareCaptionLabelSeparator{nazwa}{ciąg poleceń}, np.: \DeclareCaptionLabelSeparator{default}{: } | |
default | wstawiany jest : i spacja | |
none | nic nie jest wstawiane | |
colon | wstawiany jest : i spacja | |
period | wstawiana jest . i spacja | |
space | wstawiana tylko spacja | |
quad | wstawiane jest polecenie \quad | |
widespace | wstawiane \hspace{1em plus .3em} | |
newline | wstawiane jest polecenie \newline | |
justification | sposób formatowania opisu.
Do definiowania
nowych sposobów formatowania służy polecenie \DeclareCaptionJustification{nazwa}{ciąg poleceń}; np.: \DeclareCaptionJustification{centering}{\centering} | |
default | skład z wyrównaniem do lewego i prawego marginesu | |
justified | skład z wyrównaniem do lewego i prawego marginesu | |
centering | wszystkie linie podpisu centrowane | |
centerfirst | pierwsza linia wycentrowana | |
centerlast | ostatnia linia wycentrowana | |
raggedleft | wyrównanie do prawego marginesu | |
raggedright | wyrównanie do lewego marginesu | |
Centering | wszystkie linie centrowane, ale używane jest polecenie \Centering z pakietu ragged2e (m.in. włączane jest przenoszenie wyrazów) | |
RaggedLeft | wyrównanie do prawego marginesu, ale używane jest polecenie \RaggedLeft z pakietu ragged2e (m.in. włączane jest przenoszenie wyrazów) | |
RaggedRight | wyrównanie do lewego marginesu, ale używane jest polecenie \RaggedRight z pakietu ragged2e (m.in. włączane jest przenoszenie wyrazów | |
singlelinecheck | nadanie wartości true (wystarczy użycie parametru bez nadawania wartości) powoduje, że jeśli podpis jest jenolinijkowy, będzie on wycentrowany, bez względu na ustawiony sposób formatowania | |
on | nadanie wartości true | |
1 | nadanie wartości true | |
true | nadanie wartości true | |
0 | nadanie wartości false | |
off | nadanie wartości false | |
false | nadanie wartości false | |
style | sposób formatowania opisu, służy do
nadania różnych cech składu podpisu.
Do definiowania
nowych stylów służy polecenie \DeclareCaptionStyle{nazwa}{opcje} lub \DeclareCaptionStyle{nazwa}[dodatkowe opcje]{opcje}; np.: \DeclareCaptionStyle{default}[justification=centering]{}opcje ustawiają parametry dla całego opisu, a opcje dodatkowe dla opisów jednolinijkowych, jeśli została ustawiona flaga singlelinecheck | |
default | ustawia centrowanie podpisu dla opisów jednolinijkowych, jeśli została ustawiona flaga singlelinechech | |
default | jest równoważnestyle=default, position=default, aboveskip=10pt, belowskip=0pt |
Zostały również zdefiniowane polecenia \clearcaptionsetup{typ obiektu}, służące do przywrócenia domyślnych wartości i \showcaptionsetup{typ obiektu}, służące do wyświetlenia (w zbiorze *.log) wartości ustawianych poleceniem \captionsetup.
Poniżej wymienione polecenia odniosą skutek, jeśli nie będą używane ich nowozdefiniowane odpowiedniki.
Polecenie | opis |
---|---|
\captionsize | Określa wielkość czcionki, używanej do składu
podpisu; np:
\renewcommand{\captionsize}{\scriptsize} |
\captionlabelfont | określa rodzaj czcionki; można używać
wszystkich poleceń zmiany atrybutów przyjętych
w LaTeX2e; np:
\renewcommand{\captionlabelfont}{\bfseries} |
\captionmargin | określa wielkość lewego i prawego
marginesu w tekście opisu; np:
\setlength{\captionmargin}{2cm} |
Poniższe parametry mogą być używane wyłącznie przy wywołaniu pakietu caption.
Parametr | opis |
---|---|
normal | Jeśli podpis składa się z jodnej linii to jest centrowany w przeciwnym wypadku, składany jest w pudełko o pełnej szerokości (bez wyróżniania nazwy obiektu) -- jest to domyślny sposób składu. |
hang | |
isu | podpis składany jest tak jak środowisko description ;
kolejne linie są ,,wcięte'' na szerokość
nazwy obiektu |
center | tekst opisu jest centrowany |
centerlast | ostatnia linia opisu jest centrowana |
anne | |
Ustalenie standardowej wielkości czcionki1 | |
scriptsize | czcionka scriptsize |
footnotesize | czcionka footnotesize |
small | czcionka small |
normalsize | czcionka normalsize |
large | czcionka large |
Large | czcionka Large |
Ustalenie atrybutów czcionki | |
up | upshape |
it | itshape |
sl | slshape |
sc | scshape |
md | mdseries |
bf | bfseries |
rm | rmfamily |
sf | sffamily |
tt | ttfamily |
ruled | jeśli używany jest pakiet float
(patrz. float) i użyte było polecenie
\floatstyle{ruled} to opcja ruled spowoduje
że nazwa obiektu będzie składana czcionką określoną
w opcji lub poleceniem \captionlabelfont , a nie taką
jaka wynika z definicji pakietu float |
subfigure
to podpis rysunku podrzędnego
składany jest czcionką o jeden skok mniejszą
Pakiet jest dostępny pod adresem:
ftp://ftp.gust.org.pl/TeX/macros/latex/contrib/caption/caption.tar
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.