Selaa lähdekoodia

Updated README v2

xnecas 3 viikkoa sitten
vanhempi
sitoutus
c6a51b19f4
1 muutettua tiedostoa jossa 385 lisäystä ja 0 poistoa
  1. 385 0
      README.md

+ 385 - 0
README.md

@@ -0,0 +1,385 @@
+# UNIZA Beamer – prezentačná šablóna
+
+LaTeXová šablóna pre tvorbu prezentácií v **Beameri** 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 ukážková prezentácia a zároveň ako praktický katalóg dostupných príkazov. Vlastné makrá a vzhľad sú oddelené do modulov, takže obsah prezentácie možno upravovať bez potreby meniť všetky súčasti šablóny.
+
+## Obsah
+
+- [Štruktúra projektu](#štruktúra-projektu)
+- [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)
+
+## Štruktúra projektu
+
+```text
+.
+├── main.tex
+├── uni.sty
+├── styles/
+│   ├── colors.sty
+│   ├── contents.sty
+│   ├── fonts.sty
+│   ├── footer.sty
+│   ├── lists.sty
+│   ├── slides.sty
+│   └── titles.sty
+├── organisation/
+│   ├── info.sty
+│   ├── feit-uniza/
+│   │   ├── info.sty
+│   │   └── logo-footer.png
+│   ├── kris-feit-uniza/
+│   │   ├── info.sty
+│   │   └── logo-footer.png
+│   └── uniza/
+│       ├── info.sty
+│       └── logo-footer.pdf
+└── snippets/
+    ├── maximum.py
+    ├── mean-func.py
+    └── mean.py
+```
+
+**Dôležité:** cesty k modulom, logám a ukážkovým zdrojovým súborom sú relatívne ku koreňovému priečinku projektu. Pri kompilácii preto pracujte v priečinku, v ktorom sa nachádza `main.tex`, a zachovajte názvy a štruktúru priečinkov.
+
+## Ako prezentáciu skompilovať
+
+### Potrebné nástroje
+
+- 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 Pygments.
+
+### 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. V online editore, napríklad Overleaf, vyberte kompatibilný LaTeX kompilátor a povoľte nastavenia potrebné pre `minted`, ak ich editor vyžaduje.
+
+Výstupom je súbor `main.pdf`.
+
+## Ako zmeniť organizáciu, farby a logo
+
+Výber organizačného profilu sa robí v jedinom centrálnom súbore: **`organisation/info.sty`**. Tento súbor aktuálne obsahuje:
+
+```latex
+\input{organisation/kris-feit-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/kris-feit-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}
+```
+
+Hodnoty RGB sú tri celé čísla od `0` do `255`. Pri zmene farieb je praktické ponechať názvy významových premenných (`colorBg`, `colorText` a podobne) a meniť iba ich priradenia. Tak sa úprava automaticky prejaví v moduloch, ktoré tieto premenné používajú.
+
+### 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.
+
+#### `organisation/feit-uniza/info.sty`
+
+Farebný profil Fakulty elektrotechniky a informačných technológií UNIZA. V aktuálnych definíciách používa oranžovú farbu päty (`feitOrange`, RGB `244,119,35`) a tmavooranžovú zvýrazňovaciu farbu (`darkOrange`, RGB `228,92,18`). Načítava `organisation/feit-uniza/logo-footer.png`.
+
+#### `organisation/kris-feit-uniza/info.sty`
+
+Profil KRIS FEIT UNIZA. Aktuálne používa tyrkysovú farbu `krisCyan` (RGB `18,102,113`) pre zvýraznenie aj pozadie päty a načítava `organisation/kris-feit-uniza/logo-footer.png`. Tento profil je predvolene aktívny cez `organisation/info.sty`.
+
+#### `organisation/uniza/info.sty`
+
+Všeobecný profil Univerzity Žilina. Definuje modré odtiene, používa `unizaBlue` (RGB `0,45,113`) pre pätu a `darkbBlue` (RGB `24,47,105`) pre zvýraznenie. Načítava vektorové logo `organisation/uniza/logo-footer.pdf`.
+
+#### 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.
+
+- `mean.py` – stručný výpočet aritmetického priemeru hodnôt `[2, 4, 6, 8]`.
+- `mean-func.py` – ukážka výpočtu priemeru pomocou funkcie `calculate_mean`.
+- `maximum.py` – funkcia `find_maximum`, ktorá hľadá najväčšiu hodnotu v zozname.
+
+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
+
+Hlavičky zdrojových súborov uvádzajú tieto informácie o autorstve:
+
+- **Autor aktuálnej verzie a úprav uvedených v hlavičkách:** Matus Necas, október 2026.
+- **Pôvodná práca:** Jan Sumsky, august 2024 — `jan.sumsky@gmail.com`.