Vypimpuj svoj dokument obrázkami!

Miro v minulom článku krásne vysvetlil ako sa k LaTeXu správať aby Vás poslúchal a formátoval text tak, ako si prajete. Písanie máme zvládnuté ale každému je jasné, že obraz vydá za tisíc slov, takže dnes sa pozrieme na to, ako pridávať do dokumentov obrázky!

Aj obrázky môžu byť veda

Než prejdeme k samotnému vkladaniu, povedzme si pár viet o tom ako sa v informačných / odborných textoch správne pracuje s obrázkami. Aby som to nepredlžoval - existuje súbor zaužívaných pravidiel pre obrázky. Naozaj podstatné sú asi dva. Tým najdôležitejším je, že pod každým obrázkom musí byť popisok (anglicky caption) a tým druhým je, že jedna strana by nemala obsahovať viac ako dva obrázky, pričom obrázky zaberajú celú šírku strany. Nič sa však nebojte, o toto všetko sa LaTeX dokáže postarať takmer sám.
Vyzbrojení touto znalosťou sa môžme vrhnúť do písania!

Akú awesome vec budete schopní spraviť keď si prečítate tento návod?

Dnes som si pre vás pripravil tri jednoduché cvičenia s ktorými obstojíte prakticky pri každej potrebe vkladania obrázku. Konkrétne sa pozrieme na

Takže podme na to!

Vloženie jedného obrázku

Pozrime sa na to čo cheme v tejto časti dosiahnuť. Pôjde o absoútny základ - vloženie jedného obrázku zaberajúceho celú šírku strany a vloženie popisku. Vyzerať by to malo zhruba takto.

Jeden obrázok na šírke strany

Ako na to?

Začnime tým, že si zoberieme pekne preddefinovaný dokument podľa Mircovho návodu. Samotný LaTeX však nie je schopný obrázky zvládať ale existuje rada packageov ktoré to dokážu. Ja používam graphicx. Aby sme ho mohli používať stačí si ho pridať do úvodnej deklarácie.


\documentclass[a4paper,12pt]{article}  
\usepackage[utf8]{inputenc}            
\usepackage[slovak]{babel}
\usepackage{graphicx}
\begin{document}                       

\end{document}

Čo sa týka samotného syntaxu, tak ten je veľmi jednoduchý. LaTeXu stačí povedať: "Hej kemo, idem vkladať orázok, ten obrázok má takéto meno, chcem aby mal takúto veľkosť" a takýto popisok."
Všimnite si, že nikde neuvádzame, kde sa obrázok nachádza. Je tomu tak preto, lebo LaTeX predpokladá, že obrázok sa nachádza v zložke v ktorej máme uložený .tex súbor zdrojového kódu dokumentu. Takže ho tam musíme mať. Taktiež nehovoríme nič o formáte v ktorom je obrázok uložený ale graphicx zvláda všetky základné obrázky ako .jpg, .png, .bmp...

Takže ako to povedať tak aby LaTeX rozumel? Jednoducho! Najprv musíme povedať, že chceme vyhradiť priestor na obrázok. To spravíme nasledovne.


\begin{figure}[htbp]

\end{figure}
Pozornosť však treba venovať hranatým zátvorkám v ktorých hovoríme kam má byť obrázok zarovnaný.
  • h - here - zarovná obrázok za vetu za ktorou sa nachádza príkaz na vkladanie obrázku.
  • t - top - zarovná obrázok na začiatok strany.
  • b - bottom - zarovná obrázok na koniec strany.
  • p - page - zarovná obrázok na novú stranu.
V hranatých zátvorkách som síce napísal všetky štyri priraďovače, no vždy používame len jeden.

Ďalej TeXu povieme, že chceme obrázok vycentrovať, aký veľký má byť a aký obrázok vkladáme.

\begin{figure}[htbp]

\centering
\includegraphics[scale=0.20]{menoobrazku}

\end{figure}
Takže len rýchlo vysvetlím - \centering hovorí o zarovnaní na stred. Potom scale hovorí o tom koľko krát väčší / menší má obrázok byť v porovnaní so svojou plnou veľkosťou (pozor, nutmo použiť desatinnú bodku, s čiarkou to nebude fungovať). Potom už len stačí uviesť menoobrazku a sme takmer hotoví!

Posledné čo treba spraviť je vloženie popisku. Takže stačí jednoduchý príkaz a máme to!

\begin{figure}[htbp]
\centering
\includegraphics[scale=0.20]{menoobrazku}

\caption{Náš prvý obrázok v LaTeXu}

\end{figure}
Pri vkladaní obrázkov sa vám môže stať, že sa obrázok nezmestí na miesto kde ho chcete a je nutné ho dať až na ďalšiu stranu. Toto je v odborných textoch úplne v poriadku a práve preto sa používajú popisky - v texte povieme čo sa na ktorom obrázku nachádza a čitateľ si ho nájde podľa čísla obrázku - no a číslovanie obrázkov za nás LaTeX spraví sám!

Takže základy sme zvládli! Super! Ak chcete, môžme sa pozrieť na dačo dalšie ;)

Vloženie viacerých obrázkov a ich otočenie

Čo tak skúsiť vkladanie viacerých obrázkov naraz alebo dokonca ich otočenie? Nie je problém!
Takže zhruba toto by mal byť výsledok.

Viacej obrázkov naraz

Ako na to?

Tu je postup veľmi jednoduchý, stačí pridať druhý príkaz vkladajúci obrázok a povedať LaTeXu aby jeden z obrázkov otočil. To spravíme tak, že za scale pridáme príkaz angle= a počet stupňov o ktorý chceme obrázok otočiť. Aby obrázky neboli na seba nalepené použíjeme príkaz \hspace - horizontal space - za ktorý dáme do množinových zátvoriek koľko centimetrov má byť medzi obrázkami medzera.

Tu je kód.


\begin{figure}[h]
\begin{center}

\includegraphics[scale=0.15]{menoobrazku}
\hspace{1cm}
\includegraphics[scale=0.10, angle=45]{menoobrazku}

\caption{Viac obrázkov vedľa seba}
\end{center}
\end{figure}

Viac Vám tomu asi k tejto metóde nepoviem ale pre tých naozaj odvážnych tu mám ešte návod na obrázky s obtekaním.

Obtekanie obrázku textom

V prípade že nepíšeme text s prísnymi pravidlami, nie je problém obrázok zarovnať na stranu a nechať ho obtiecť textom.
Vyzerať by to malo asi takto.

Obtekané obrázky

Ako na to?

S obtekaním si už ale neporadí ani balíček graphicx. Nie je však problém, stačí zaviesť nový balíček. Ja rád pracujem s wrapfig. Zavediemeho starým známym


\usepackage{wrapfig}

Asi najjednoduchšie bude Vám ukázať kompletný kód a vysvetliť ho, pretože vôbec nie je náročný.
Vyzerá asi takto.


...text pred obrázkom, text pred obrázkom.

\begin{wrapfigure}[12]{l}{6cm}
	\centering
	\includegraphics[scale=0.5]{menoobrazku}
\end{wrapfigure}

Text okolo obrázku, text okolo obrázku...

\begin{wrapfigure} ... \end{wrapfigure} vymedzuje kde sa obrázok bude nachádzať. Prvá hranatá zátvorka (tá s číslom 12) hovorí koľko riadkov má byť pre obrázok vynechaných. Prvá množinová zátvorka (tá s písmenom l) hovorí na ktorú stranu má byť obrázok zarovnaný (l - left / r - right) a druhá množinová zátvorka (6 cm) hovorí koľko prietoru obrázok dostane na šírku. Tieto tri zátvorky však hovoria len o boxíku do ktorého budme obrázok vkladať, nie o obrázku samotnom. Ten ovplyvňujeme tak ako doteraz v rámci príkazu includegraphics.
Aj pre obtekané obrázky je možné vložiť popisok, ja som sa ho tu len rozhodol nepoužiť.

Myslím, že pre začiatok je toto všetko čo budete potrebovať a ako vždy zvyknem hovoriť, neexistuje nič čo by sa nedalo vygoogliť ;)

Jakub

Späť na archív