# UNIZA Beamer – prezentačná šablóna LaTeXová šablóna pre tvorbu prezentácií v prostredí **Beamer** s vlastnými rozloženiami slajdov, typografiou, farbami, pätou, logom organizácie a pomocnými príkazmi na vkladanie tabuliek, obrázkov a zdrojového kódu. Súbor `main.tex` slúži ako demo prezentácia a zároveň ako praktický katalóg dostupných príkazov. ## Obsah - [Ako zmeniť organizáciu, farby a logo](#ako-zmeniť-organizáciu-farby-a-logo) - [Čo obsahujú jednotlivé súbory](#čo-obsahujú-jednotlivé-súbory) - [Príkazy na tvorbu slajdov](#príkazy-na-tvorbu-slajdov) - [Tabuľky, obrázky a zdrojový kód](#tabuľky-obrázky-a-zdrojový-kód) - [Riešenie bežných problémov](#riešenie-bežných-problémov) - [Atribúcia a licencia](#atribúcia-a-licencia) ### 1. Kompilácia online cez Overleaf (odporúčaná možnosť) Prezentáciu môžete skompilovať priamo v prehliadači bez lokálnej inštalácie LaTeXu, Pythonu alebo Pygments. 1. Stiahnite ZIP archív `Uni_Presentation_Template_with_README.zip` z repozitára alebo miesta, kde je šablóna zverejnená. Archív nerozbaľujte. 2. Prihláste sa do [Overleafu](https://www.overleaf.com/) a na stránke projektov zvoľte **New Project → Upload Project**. 3. Nahrajte ZIP archív. Overleaf rozbalí súbory a zachová priečinky ako `styles/`, `organisation/` a `snippets/`. 4. Otvorte nastavenia projektu a skontrolujte, že ako hlavný dokument (*Main document*) je zvolený `main.tex`. Ako kompilátor zvoľte `pdfLaTeX`, ak už nie je vybraný automaticky. 5. Kliknite na **Recompile**. Po úspešnej kompilácii si hotový súbor stiahnete cez **Download PDF**. Šablóna používa balík `minted` na zvýrazňovanie zdrojového kódu. Overleaf ho podporuje bez toho, aby ste si na svojom počítači museli inštalovať Python alebo Pygments. Ak sa kompilácia nepodarí, najprv skontrolujte, či je ako hlavný dokument nastavený `main.tex`, a pozrite si prvú chybu v logu kompilácie. Užitočné návody: [nahratie ZIP projektu do Overleafu](https://www.overleaf.com/learn/latex/Kb/Uploading_a_project) a [zvýrazňovanie kódu pomocou `minted`](https://www.overleaf.com/learn/latex/Code_Highlighting_with_minted). ### 2. Potrebné nástroje pri lokálnej kompilácii - LaTeX distribúcia, napríklad TeX Live alebo MiKTeX. - Trieda `beamer` a balíky používané šablónou, vrátane `graphicx`, `booktabs`, `amsmath`, `minted`, `caption`, `calc`, `adjustbox` a `multicol`. - Python a balík **Pygments**, ktorý používa `minted` na zvýrazňovanie syntaxe kódu. - Povolené spúšťanie externých príkazov v LaTeXu (*shell escape*), pretože `minted` spúšťa pomocné nástroje na zvýrazňovanie syntaxe. ### 3. Lokálna kompilácia pomocou `latexmk` V koreňovom priečinku projektu spustite: ```bash latexmk -pdf -shell-escape main.tex ``` Ak `latexmk` nemáte, môžete použiť `pdflatex`: ```bash pdflatex -shell-escape main.tex pdflatex -shell-escape main.tex ``` Druhé spustenie pomáha aktualizovať odkazy, obsah a celkový počet slajdov. Pri lokálnej kompilácii sa uistite, že máte správne nainštalované balíky a povolený *shell escape*. Výstupom je súbor `main.pdf`. ## Ako zmeniť organizáciu, farby a logo Výber organizačného profilu sa robí v jednom centrálnom súbore: **`organisation/info.sty`**. Tento súbor aktuálne obsahuje: ```latex \input{organisation/uniza/info.sty} ``` Tým sa aktivuje profil `uniza`. Na prepnutie na inú z pripravených organizácií zmeňte tento jeden riadok. ### Príklad: prechod na FEIT UNIZA V súbore `organisation/info.sty` nahraďte riadok: ```latex \input{organisation/uniza/info.sty} ``` riadkom: ```latex \input{organisation/feit-uniza/info.sty} ``` Zmena aktivuje farebný profil a logo z priečinka `organisation/feit-uniza/`. Obsah slajdov v `main.tex` meniť nemusíte. ### Ktoré nastavenia profil určuje? Každý profil má vlastný súbor `info.sty`, v ktorom sa definujú farby a cesta k logu v päte. Napríklad profil `organisation/feit-uniza/info.sty` mapuje konkrétne farby na významové premenné: ```latex \colorlet{colorBg}{white} \colorlet{colorText}{black} \colorlet{colorTextHighlight}{darkOrange} \colorlet{colorFooterFg}{white} \colorlet{colorFooterBg}{feitOrange} \providecommand{\orgLogoFooter}{organisation/feit-uniza/logo-footer.png} ``` Význam premenných: - `colorBg` – základné pozadie slajdov. - `colorText` – predvolená farba hlavného textu. - `colorTextHighlight` – zvýrazňovacia farba, využívaná napríklad štruktúrnymi prvkami a nadpismi. - `colorFooterFg` – farba textu a prvkov v päte. - `colorFooterBg` – farba pozadia päty; používa sa aj ako pozadie farebného záverečného slajdu. - `orgLogoFooter` – cesta k obrázku loga zobrazovaného v päte. Farby možno definovať aj pomocou RGB, napríklad: ```latex \providecolor{myBlue}{RGB}{0, 90, 160} \colorlet{colorTextHighlight}{myBlue} \colorlet{colorFooterBg}{myBlue} ``` ### Vytvorenie vlastného profilu organizácie 1. Vytvorte priečinok, napríklad `organisation/moj-profil/`. 2. Vložte doň súbor `info.sty` s definíciami farieb a cesty k logu. 3. Uložte logo v danom priečinku a v `\orgLogoFooter` uveďte správny názov a formát súboru. 4. Zmeňte `organisation/info.sty` tak, aby načítaval nový profil, napríklad `\input{organisation/moj-profil/info.sty}`. 5. Skompilujte prezentáciu a skontrolujte kontrast textu, čitateľnosť päty a správne zobrazenie loga. Príklad minimálneho súboru vlastného profilu: ```latex % organisation/moj-profil/info.sty \providecolor{myBrand}{RGB}{0, 90, 160} \colorlet{colorBg}{white} \colorlet{colorText}{black} \colorlet{colorTextHighlight}{myBrand} \colorlet{colorFooterFg}{white} \colorlet{colorFooterBg}{myBrand} \providecommand{\orgLogoFooter}{organisation/moj-profil/logo-footer.png} ``` Logo musí existovať presne na uvedenej ceste. Ak používate iný súbor alebo formát, upravte hodnotu `\orgLogoFooter`. ## Čo obsahujú jednotlivé súbory ### Koreň projektu #### `main.tex` – ukážková prezentácia Hlavný dokument, ktorý autor prezentácie zvyčajne upravuje. Na začiatku načíta triedu Beamer, balík `uni`, jazykové a kódovacie nastavenia a metadáta prezentácie. Ďalej demonštruje titulné slajdy, obsah, sekcie, jednostĺpcové a dvojstĺpcové rozloženia, zoznamy, tabuľky, obrázky, matematiku a zdrojové kódy. Pri príprave vlastnej prezentácie upravte najmä: ```latex \author{Meno Priezvisko} \title{Názov prezentácie} \subtitle{Podnadpis prezentácie} ``` Potom nahraďte ukážkové sekcie a obsah vlastným materiálom. Súbor je vhodný aj ako referencia syntaxe vlastných makier. #### `uni.sty` – hlavný balík šablóny Koordinačný balík, ktorý sa načítava príkazom `\usepackage{uni}`. Načíta potrebné LaTeX balíky, nastaví základné vlastnosti Beameru, definuje počítadlo pre označenie kódových blokov a postupne načíta moduly zo `styles/`. Ak chcete meniť iba obsah prezentácie alebo organizačnú tému, zvyčajne tento súbor upravovať nepotrebujete. Zásah doň je vhodný pri rozširovaní samotnej šablóny alebo pri pridávaní ďalších závislostí či modulov. ### `styles/` – vzhľad a správanie šablóny Táto zložka rozdeľuje vzhľad a vlastné príkazy do tematických modulov. Uľahčuje údržbu: typografiu možno meniť v `fonts.sty`, pätičku v `footer.sty` a rozloženia slajdov v `slides.sty`. #### `styles/colors.sty` Načíta vybraný organizačný profil z `organisation/info.sty` a priradí jeho významové farby ku komponentom Beameru. Nastavuje farbu bežného textu a pozadia, štruktúrnych prvkov, päty a položiek obsahu prezentácie. Ak chcete prepínať medzi pripravenými organizáciami, zmeňte centrálny výber profilu; tento súbor na bežnú zmenu značky meniť netreba. #### `styles/contents.sty` Definuje príkazy pre tabuľky, obrázky a zdrojové kódy: - `\tab` vytvorí tabuľku s popisom a menovkou. - `\fig` vloží obrázok s popisom a menovkou; ak súbor obrázka neexistuje, zobrazí náhradný rámček. - `\code` vloží kód zo samostatného súboru pomocou `minted`. Nehviezdičkovaná verzia pridáva označenie typu `(L1)`, `(L2)` atď.; hviezdičkovaná verzia číslovanie vynecháva. Súbor obsahuje aj rozmery a parametre kódových blokov, napríklad veľkosť písma, odsadenie čísel riadkov a typ rámčeka. #### `styles/fonts.sty` Nastavuje typografiu prezentácie: základnú veľkosť písma, veľkosti nadpisov a podnadpisov, meno autora, text v päte a jednotlivé úrovne zoznamov. Ak má prezentácia pôsobiť jednotne, globálne veľkosti písma meňte práve tu, nie samostatne na každom slajde. #### `styles/footer.sty` Zodpovedá za pätu slajdov. Načíta organizačné nastavenia, určuje rozmery päty a loga a podľa typu slajdu zobrazí logo spolu s dátumom na titulnej strane alebo logo spolu s číslom aktuálneho a celkového počtu slajdov na bežných slajdoch. Skrýva predvolené navigačné symboly Beameru. Pri zmene loga upravte organizačný profil; rozmery a zarovnanie päty meňte v tomto súbore iba vtedy, ak chcete meniť spoločný dizajn. #### `styles/lists.sty` Nastavuje vzhľad odrážok pre prvú, druhú a tretiu úroveň nečíslovaných zoznamov. Číslované zoznamy naďalej vytvárate štandardným prostredím LaTeX `enumerate`. #### `styles/slides.sty` Hlavný modul na rozloženia slajdov. Definuje titulné slajdy, obsah, oddeľovacie slajdy sekcií a jednostĺpcové či dvojstĺpcové rozloženia. Obsahuje tiež rozmery, napríklad medzeru medzi stĺpcami a odstupy v titulných slajdoch. Pri vytváraní obsahu používajte dostupné príkazy, aby jednotlivé slajdy zachovali jednotný vzhľad. Tento súbor upravujte vtedy, keď chcete meniť samotné rozloženie. #### `styles/titles.sty` Definuje formát titulkov bežných slajdov a označenie pokračovania viacstranových rámcov. Určuje vertikálne odsadenie, zarovnanie a použitie nastaveného písma nadpisov. ### `organisation/` – profily značky #### `organisation/info.sty` Centrálny prepínač organizácie. Načítava jeden konkrétny profil, ktorý obsahuje farby a cestu k logu. Toto je prvé miesto, ktoré treba upraviť pri zmene organizačnej témy. Aktuálne podporované témy: 1. UNIZA, 2. FEIT-UNIZA, 3. KRIS-FEIT-UNIZA. #### Súbory `logo-footer.*` Grafické súbory loga, ktoré sa umiestňujú do päty. Každý profil odkazuje na vlastné logo. Ak ho nahradíte, zachovajte cestu uvedenú v `\orgLogoFooter`, alebo túto definíciu aktualizujte. Dbajte na oprávnenie používať logo a na dodržiavanie pravidiel vizuálnej identity organizácie. ### `snippets/` – ukážkové zdrojové kódy Obsahuje samostatné ukážky Pythonu, ktoré v `main.tex` vkladá makro `\code`. Udržiavanie kódu v osobitných súboroch zjednodušuje jeho úpravu a umožňuje zachovať zvýrazňovanie syntaxe. Pri príkaze `\code` použite cestu k súboru relatívnu ku koreňu projektu, napríklad `snippets/mean.py`. ## Príkazy na tvorbu slajdov Všetky nižšie uvedené príkazy sú definované šablónou a používajú sa v `main.tex` po načítaní `\usepackage{uni}`. ### Titulok a obsah ```latex \slideTitle \slideTitleColor \slideTableOfContents \slideTableOfContents[2] ``` - `\slideTitle` vytvorí titulný slajd z údajov `\title`, `\subtitle` a `\author`. - `\slideTitleColor` vytvorí záverečný/titulný slajd s farebným pozadím podľa farby päty. - `\slideTableOfContents` vloží obsah; voliteľný argument je počet stĺpcov. Ak argument vynecháte, použije sa jeden stĺpec. ### Oddeľovacie slajdy sekcií ```latex \slideSection{Názov sekcie} \slideSection*{Sekcia bez zápisu do obsahu} \slideSectionSubtitle{Názov sekcie}{Podnadpis} ``` Neoznačené (nehviezdičkované) verzie zapíšu názov sekcie do štruktúry Beameru, a tým ovplyvnia automatický obsah. Hviezdička potlačí automatické zaregistrovanie sekcie. Pri `\slideSectionSubtitle` druhý povinný argument obsahuje podnadpis. ### Jednostĺpcové slajdy ```latex \slideOneColumn{Nadpis slajdu} { Text, zoznam alebo iný obsah slajdu. } \slideOneColumn*{Nadpis bez registrácie sekcie} { Obsah slajdu. } \slideOneColumnPlain { Obsah bez nadpisu rámca. } ``` - `\slideOneColumn{nadpis}{obsah}` vytvorí štandardný slajd s nadpisom. - `\slideOneColumn*` zobrazí nadpis, ale nezaregistruje ho ako sekciu v obsahu. - `\slideOneColumnPlain{obsah}` vytvorí slajd bez štandardného nadpisu. ### Dvojstĺpcové slajdy ```latex \slideTwoColumns{Porovnanie}{0.45} { Obsah ľavého stĺpca. } { Obsah pravého stĺpca. } \slideTwoColumnsPlain{0.45} { Ľavý stĺpec bez nadpisu. } { Pravý stĺpec bez nadpisu. } ``` Číselný argument určuje podiel šírky ľavého stĺpca voči šírke textovej oblasti. Napríklad `0.45` znamená 45 % šírky pre ľavý stĺpec; medzi stĺpcami sa navyše ponecháva definovaná medzera. Pravý stĺpec zaberie zvyšný priestor. Podľa potreby použite pomer ako `0.4`, `0.45` alebo `0.5` a skontrolujte, či sa obsah zmestí. Hviezdičková verzia `\slideTwoColumns*{nadpis}{pomer}{ľavý obsah}{pravý obsah}` potlačí automatické registrovanie sekcie. ## Tabuľky, obrázky a zdrojový kód ### Tabuľka ```latex \tab{lrr}{tab:vysledky}{Porovnanie výsledkov} { \toprule \textbf{Parameter} & \textbf{Metóda A} & \textbf{Metóda B} \\ \midrule Čas [s] & 12.4 & 14.8 \\ Presnosť [\%] & 95 & 97 \\ \bottomrule } ``` Argumenty v poradí: špecifikácia stĺpcov, menovka na odkazovanie, popis tabuľky a samotný obsah. V špecifikácii sa používajú bežné typy zarovnania LaTeXu, napríklad `l` (vľavo), `c` (na stred) a `r` (vpravo). Vodorovné čiary `\toprule`, `\midrule` a `\bottomrule` poskytuje balík `booktabs`. ### Obrázok ```latex \fig{0.8}{fig:architektura}{Schéma architektúry}{images/architektura.png} ``` Argumenty sú: šírka ako násobok `\linewidth`, menovka, popis a cesta k obrázku. Hodnota `0.8` znamená najviac 80 % šírky dostupného riadku. Obrázok musí existovať na zadanej ceste. Ak neexistuje, makro zobrazí rámček s textom `Placeholder`, čo pomáha odhaliť chýbajúci súbor bez prerušenia vkladania obrázka. ### Zdrojový kód ```latex \code{python}{code:mean}{snippets/mean.py} \code*{python}{lst:maximum}{snippets/maximum.py} ``` Argumenty: jazyk pre zvýraznenie syntaxe, menovka a cesta k zdrojovému súboru. `\code` zobrazí kód s číslami riadkov a označením `L1`, `L2` atď. vedľa bloku. `\code*` použije plnú šírku a nezvyšuje počítadlo kódových blokov. Cesty musia smerovať na existujúce súbory a kompilácia musí mať správne nastavený `minted`/Pygments. ## Riešenie bežných problémov - **Chyba pri `minted` alebo Pygments:** skontrolujte, či je nainštalovaný Pygments a či kompilátor používa `-shell-escape`. - **Nezobrazuje sa logo:** overte hodnotu `\orgLogoFooter`, existenciu súboru a kompiláciu z koreňového priečinka projektu. - **Zobrazí sa `Placeholder` namiesto obrázka:** cesta uvedená v `\fig` je nesprávna alebo obrázok chýba. V dodanom ukážkovom `main.tex` sa používa `demo-image.png`, ktorý v zozname súborov tejto šablóny nie je; nahraďte ho vlastným existujúcim obrázkom alebo pridajte súbor na túto cestu. - **Zmena farieb sa neprejaví:** overte, ktorý profil načítava `organisation/info.sty`, a upravujte významové premenné v aktívnom profile. - **Odkazy alebo celkový počet slajdov nie sú aktualizované:** spustite kompiláciu druhýkrát alebo použite `latexmk`. - **Obsah sa nezobrazuje podľa očakávania:** skontrolujte, či používate nehviezdičkované príkazy pre sekcie tam, kde sa majú automaticky registrovať do obsahu. ## Atribúcia a licencia Táto šablóna je licencovaná pod medzinárodnou licenciou **[Creative Commons Attribution 4.0 International (CC BY 4.0)](http://creativecommons.org)**. * **Autor aktuálnej verzie a úprav:** Matúš Nečas (október 2026) * **Pôvodná práca (autor pôvodnej šablóny):** Ján Šumský (august 2024) — `jan.sumsky@gmail.com`