Wszystkie części cyklu:
- Tworzenie prezentacji przy użyciu LaTeX cz. 1: konfiguracja środowiska
- Tworzenie prezentacji przy użyciu LaTeX cz. 2: tworzenie struktury prezentacji
- Tworzenie prezentacji przy użyciu LaTeX cz. 3: tworzenie prezentacji
- Tworzenie prezentacji przy użyciu LaTeX cz. 4: budowa konspektu
We wcześniejszych wpisach przedstawiłem w jaki sposób utworzyć szkielet prezentacji w LaTeXu. Teraz czas na utworzenie właściwych slajdów. Od razu uprzedzę, znajdą się tu tylko same podstawowe informacje, akurat to co było mi potrzebne do utworzenia prezentacji o Subversion.
Konstrukcja slajdu
Slajdy w klasie Beamer są zawarte między dwoma tagami: \begin{frame}
oraz \end{frame}
. Tylko to co zostanie umieszczone pomiędzy nimi zostanie wzięte pod uwagę i na tej podstawie zostaną wygenerowane slajdy.
Generalnie wynikiem pojedynczej ramki (frame
) jest utworzenie pojedynczego slajdu w pliku PDF. Nie zawsze jednak tak będzie, istnieją polecenia, których użycie spowoduje wygenerowanie większej ilości slajdów.
I tak wygląda podstawowy slajd:
Jego definicja:
237 238 239 240 241 242 243 244 245 246 247 248 249 250 | \begin{frame}[c]{Kiedy blokowanie jest potrzebne} Model kopiuj -- modyfikuj -- scal sprawdza się bardzo dobrze przy założeniu, że mamy do czynienia z plikami tekstowymi, które są łatwe w zarządzaniu i sprawdzaniu co się zmieniło. \pause W przypadku pracy z plikami binarnymi, których nie da się łatwy czy też nawet automatyczny sposób scalić, przydatne może być blokowanie plików przed rozpoczęciem ich modyfikacji. \end{frame} |
Slajd ten jest zbudowany w nastepujący sposób:
\begin{frame}
– rozpoczęcie slajdu[c]
– mówi, że zawartość slajdu ma zostać wycentrowana na środku, można też użyć[t]
mówiącego, że zawartość slajdu ma zostać wyrównana do góry{Kiedy blokowanie jest potrzebne}
– tytuł slajdu, można także umieścić podtytuł w kolejnym nawiasie klamrowym, do dyspozycji są także dwa polecenie:\frametitle
oraz\framesubtitle
, które pozwalają na ich ustawienie wewnątrz slajdu- zawartość slajdu, w tym przypadku po prostu akapit tekstu, poszczególne akapity muszą być rozdzielone przynajmniej dwoma znakami końca linii (jeden znak końca linii pozwala na dzielenie długiej linii w pliku źródłowym, ale przez LaTeX będzie on zastąpiony znakiem spacji)
\pause
– powoduje, że zostanie zatrzymane wyświetlenie slajdu w momencie napotkania znaczka, w praktyce w tym przypadku spowoduje wygenerowanie dwóch stron w pliku PDF: pierwsza będzie zawierała tylko pierwszy akapit, druga oba\end{frame}
– koniec slajdu
Wypunktowania na slajdach
Jednym z najczęściej używanych elementów prezentacji są różnego rodzaju wypunktowania. W przypadku tworzenia prezentacji mamy można zdefiniować ich trzy rodzaje:
- lista
- numerowane
- użycie definicji do numerowania
Lista wartości
Przykładowy wygląd listy wartości:
I kod który odpowiada za wygenerowanie tej strony:
73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 | \begin{frame}{Czym jest repozytorium} \begin{itemize} \item scentralizowany system współdzielenia danych \item operacje jakie można wykonać na repozytorium: \begin{itemize} \item dodawanie plików \item usuwanie plików \item zmiany nazwy pliku \item przeniesienie pliku do innego katalogu \item zmiana właściwości \end{itemize} \item historia zmian \item odczyt danych przez klienta \end{itemize} \end{frame} |
Nowe elementy, które się pojawiły:
\begin{itemize}
– rozpoczęcie listy numerowanej\item
– nowy element listy\end{itemize}
– koniec listy numerowanej
Jak widać, listy można także zagnieżdżać poprzez ponowne rozpoczęcie definicji listy numerowanej. Jeżeli z jakiś powodów chcemy wyświetlić część elementów listy, lub wyświetlać je po kolei, to zawsze można w odpowiednim miejscu dodać polecenie \pause
.
Lista numerowana
Tworzenie list numerowanych wygląda praktycznie tak samo jak tworzenie zwykłej listy (zmienia się tylko jej typ). Tak wygląda slajd w wybranym temacie:
I kod odpowiedzialny za jego wygenrowanie:
129 130 131 132 133 134 135 136 137 138 |
Elementy nowe:
\begin{enumerate}
– rozpoczęcie listy numerowanej\item
– kolejny element listy\end{enumerate}
– zakończenie listy numerowanej
Listy z wartościami definiowanymi
Można także stworzyć listę, w której będzie się podawało definicję, która jest opisywana:
Kod, który definiuje tę stronę:
340 341 342 343 344 345 346 347 | \begin{frame}{Budowa repozytorium} Zalecany podział repozytorium na katalogi: \begin{description}[\texttt{branches}] \item[\texttt{trunk}] aktualna wersja danych (np. bieżący rozwój projektu) \item[\texttt{branches}] poszczególne odgałęzienia projektu \item[\texttt{tags}] oznakowane wersje \end{description} \end{frame} |
\begin{description}[\texttt{branches}]
– rozpoczęcie listy opisowej, w nawiasach[]
można podać wartość najszerszego elementu, dzięki temu będzie możliwe odpowiednie ustawienie szerokości kolumny na wartości opisowe\item[\texttt{trunk}]
– kolejny element listy, w nawiasach[]
podaje się wartość etykiety\texttt{trunk}
– wyświetlenie podanego tekstu (w nawiasach{}
) przy użyciu czcionki o stałej szerokości znaków\end{description}
– koniec listy opisowej
Wstawienie grafiki
Kolejnym elementem często umieszczanym w prezentacjach są rożnego rodzaju obrazki. W prezentacji wyglądają one tak:
Kod, który generuje ten slajd:
98 99 100 101 102 103 | \begin{frame}{Współdzielenie plików}{Pobranie plików z repozytorium} \begin{figure}[t] \includegraphics[height=0.62\textheight,keepaspectratio=true,clip=true,trim=0 0 0 100]{img/wsp_plik_1.png} \caption{Użytkownicy pobierają plik z repozytorium} \end{figure} \end{frame} |
Znaczenie nowych elementów:
\begin{frame}{Współdzielenie plików}{Pobranie plików z repozytorium}
– podanie tytułu i jednocześnie podtytułu slajdu\begin{figure}[t]
– oznaczenie, że będzie wstawiany obrazek, który zostanie wyrównany do góry (znacznik[t]
\includegraphics
– wstawienie grafikiheight=0.62\textheight
– ustawienie nowej wysokości obrazka, w tym przypadku to będzie0,62
pomnożone przez wielkość miejsca na wprowadzenie tekstukeepaspectratio=true
– przy skalowania obrazka zachowaj proporcjeclip=true
– obcięcie marginesów, należy ustawić aby działał parametrtrim
trim=0 0 0 100
– zdefiniowanie marginesów do obcięcia{img/wsp_plik_1.png}
– ścieżka dostępu do grafiki
\caption
– definicja podpisu pod obrazkiem\end{figure}
– koniec wstawianie obrazka
Tworzenie ramek
Można na prezentacji także umieszczać rożnego rodzaju ramki pozwalające na grupowanie informacji znajdujących się na slajdzie.
I kod pozwalający na wygenerowanie tego slajdu:
329 330 331 332 333 334 335 336 337 338 | \begin{frame}{Utworzenie repozytorium} \begin{block}{Linia poleceń} \texttt{svnadmin create NoweRepozytorium} \end{block} \begin{block}{TortoiseSVN} \begin{figure} \includegraphics[scale=0.45,keepaspectratio=true]{img/20_tortoise_create_new_repository.png} \end{figure} \end{block} \end{frame} |
Jak widać, za utworzenie ramki odpowiada konstrukcja \begin{block}{Linia poleceń}
. Pozwala ona na zdefiniowanie ramki oraz jej tytułu.
Pojawia się także dodatkowa opcja w polecenie \includegraphics
: scale=0.45
. Pozwala ona na skalowanie obrazka o zadaną wielkość.
Wstawienie fragmentów kodu
Przy normalnym używaniu LaTeXa musimy uważać na obecność znaków specjalnych, które są w odpowiedni sposób przez niego interpretowane. Czasem istnieje potrzeba wstawienia fragmentu np. kodu źródłowego, który zawiera pokaźna ilość tych znaków specjalnych (np. przykład użycia jakiejś metody w LaTeXu). Przydatna wtedy jest możliwość wyłączenia interpretacji tekstu jako poleceń Tex.
I kod źródłowy, który pozwala na wygenerowanie powyższego slajdu:
445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 | \begin{frame}[fragile]{Konflikty związane z plikami}{Zmiany w wewnątrz pliku} W przypadku wystąpienia tego rodzaju konfliktu w pliku źródłowym można znaleźć następujące linie: \begin{verbatim} < <<<<<< nazwa pliku twoje zmiany ======= kod pobrany z repozytorium >>>>>>> nr rewizji \end{verbatim} Można teraz tak zmodyfikować plik, aby najlepiej odzwierciedlał stan faktyczny. \end{frame} |
Na co zwrócić uwagę:
\begin{frame}[fragile]
– podczas definiowania slajdu należy ustawić parametr[fragile]
, włącza ona odpowiedni sposób interpretacji slajdu i pozwala na użycie poniższego polecenia\begin{verbatim}
– rozpoczęcie bloku, które ma zawierać wrażliwy tekst\end{verbatim}
– koniec bloku
Przykładowy projekt – prezentacja Subversion
Powyższe informacje wystarczyły mi do utworzenia prezentacji o Subversion. Poniżej link zarówno do pliku PDF z prezentacją, jak i do jej źródeł w LaTeXu:
- Plik PDF: Subversion – jak działa
- Źródła: Subversion – jak działa – źródła prezentacji