W przypadku Latexa i tworzenia prezentacji przy użyciu pakietu Beamer tworzenie spisu treści jest proste, i składa się z dwóch kroków:
- Dodać do prezentacji informacji o podziale jej na sekcje, podsekcje i pod podsekcje (czyli rozdziały i pod rozdziały). Można to zrobić przy pomocy poleceń:
Jeżeli użyjemy któregoś polecenia w takiej formie:
\section*{Tytuł sekcji}
, to wybrana sekcja nie będzie uwzględniania w spisie treści. - Wygenerować wpis przy użyciu polecenia
\tableofcontents
. Pozwoli to na wstawienie spisu treści w miejscu wystąpienia tego polecenia.
I tak jak z punktem pierwszym problemów raczej być nie powinno, to mamy spory wpływ na generowanie spisu treści. I poniżej kilka przykładów, jak może wyglądać spis treści, generowany zarówno na początku dokumentu, jak również przed większymi fragmentami prezentacji.
Podstawowy spis treści, generuje na slajdzie wszystkie sekcji, podsekcje i pod podsekcje:
W przypadku niewielkich prezentacji, taki spis treści może być w porządku. Jednak jeżeli prezentacja jest długa, jest podzielona na wiele części, to nie będzie to zbyt przejrzyste.
Można wobec tego wygenerować spis treści zawierający tylko główne punkty:
Powyższy wpis wyświetli tylko główne sekcje dokumentu (parametr hideallsubsections
) oraz pozwoli na wyświetlenie spisu treści stopniowo, po jednym punkcie (parametr pausesections
). Dzięki temu można spokojnie omówić, co będzie przedmiotem wykładu w każdej części prezentacji.
Przydatne także może być generowanie spisu treści przed rozpoczęciem danej sekcji, dzięki czemu można przedstawić dokładny plan prezentacji.
\tableofcontents[currentsection, hideothersubsections,sections={<1-3>}]
\end{frame}
Pojawiły się się 3 nowe parametry:
currentsection
– powoduje, że wszystkie sekcje poza aktualną będą wyświetlono jako przyciemnione, czyli aktualna sekcja zostanie wyróżnionahideothersubsections
– podsekcje z innych sekcji niż aktualna zostaną ukryte, czyli zostaną tylko główne sekcjesections
– pozwala określić, które sekcje mają zostać wyświetlone, w tym przypadku, czyli tutaj od 1 do 3, a aktualna sekcja ma numer 2
Pojawia się jednak pewien problem, gdy nie chcemy wyświetlić pod podsekcji. Nie ma w takim przypadku możliwości wyłączenia ich wyświetlenie (przy pozostawieniu wyświetlania tylko podsekcji). Sposobem na to jest użycie dodatkowej komendy \setcounter
, która pozwala na zdefiniowanie poziomu zagłębienia spisu treści:
\setcounter{tocdepth}{2}
\tableofcontents[sectionstyle=show/hide,subsectionstyle=show/show/hide]
\end{frame}
Oprócz nowej komendy pojawiły się dwie dodatkowe opcje:
sectionstyle
– pozwala na określenie, czy i jak mają być wyświetlane sekcje, pierwszy parametr dotyczy aktualnej sekcji (ma zostać pokazana), drugi mówi o pozostałych sekcjach (mają zostać schowane)subsectionstyle
– ten parametr natomiast pozwala określić co ma się dziać z podsekcjami: pokaż aktualną podsekcję, pokaż podsekcje aktualnej sekcji, ukryj inne podsekcje
Zamiast hide
można także użyć przełącznika shaded
.
Jak widać, te dwie ostatnie opcje tak naprawdę pozwalają zdefiniować co ma się dziać ze spisem treści, pozostałe przełączniki tylko w odpowiedni sposób je konfigurują.