Jak vkládat obrázky

[  Prostředí figure  |  Balík graphics  |  Vkládání různých typů obrázků  |  Tvorba vektorových obrázků  ]

Prostředí figure

Pro vkládání obrázků do dokumentu se používá prostředí figure. Toto prostředí lze použít kdekoli v dokumentu. LaTeX se postará o to, aby byl obrázek vysázen v typograficky přijatelném místě.

\begin{figure}
  \centering
  \includegraphics[width=15cm]{img/triangle.eps}
  \caption{Magický trojúhelník se čtyřmi vnitřními úhly a pěti stranami.}
  \label{fig:triangle}
\end{figure}

Příkaz \centering zajistí vycentrování obrázku v horizontálním směru vzhledem k textovému bloku. Příkaz \caption vytiskne pod obrázkem popis spolu se správným číslem obrázku, aby se šlo na tento obrázek odkazovat v textu.

Pro správné odkazování je potřeba použít příkaz label, který slouží jako pojmenovaná značka. V tomto případě se na obrázek půjde odkazovat pomocí příkazu \cite{fig:triangle}. Název značky může být v podstatě libovolný, avšak je dobré si zvyknout používat předpony, které identifikují typ odkazovaného objektu (fig:, sec:, tab:, eq:, atd.).

Pozicování obrázků

Obrázek vložený výše ukázaným způsobem bude umístěn v textu v nejbližším vhodném místě. LaTeX jej však může umístit v podstatě kdekoli. Pokud bude kapitola tvořena příliš velkým množstvím podkapitol, bude obsahovat množství rovnic, tabulek, definic a jiných elementů, které narušují spojitý tok textu, může se LaTeX rozhodout, že obrázek vysází až na samém konci kapitoly. To nemusí být přijatelné řešení, proto prostředí akceptuje několik parametrů, které toto chování ovlivňují. Tyto parametry se zapisují do hranatých závorek hned za úvodní značku prostředí.

\begin{figure}[htbp]

Parametrů může být více a jejich pořadí určuje prioritu. V tomto případě parametry říkají, že obrázek má být umístěn v místě výskytu (h - here), pokud to nepůjde, nahoře na stránce (t - top) nebo dole na stránce (b - bottom). Pokud nelze aplikovat žádnou z předchozích možností, vytvoří se samostatná stránka (p - float page), na níž se budou shromažďovat pouze plovoucí objekty, tj. obrázky nebo tabulky. Implicitní skupina parametrů je [tbp].

Balík graphics

Uvnitř prostředí figure může být v podstatě cokoli. Lze tady použít LaTeXové příkazy pro kreslení grafických elementů (\circle, \oval, \line, atd.), ale kreslení obrázků tímto způsobem je velmi pracné, pokud není k dispozici vhodný grafický editor (viz dále). Mnohem pohodlnější je vytvořit obrázek ve vhodném formátu a do dokumentu jej vložit pomocí příkazu \includegraphics z balíku graphics.

Tímto způsobem lze vkládat obrázky v různých formátech. Aby byl LaTeX schopen zacházet s různými formáty obrázků, je potřeba použít správný ovladač. Ovladač je program, který umí s obrázky v daném formátu pracovat. Ovladač se zavádí použitím parametru při vkládání balíku graphics (nebo jeho rozšířené verze graphicx).

\usepackage[dvips]{graphics}

Nejpoužívanější ovladače jsou dvips (obrázky .ps a .eps) a dvipdf (obrázky .pdf). První se používá se standardním LaTeXem, druhý s pdfLaTeXem.

Vkládání bitmapových obrázků (jpeg, gif, bmp, ...)

Existuje ještě množství jiných ovladačů, které však opět pracují s vektorovými formáty. Bitmapové obrázky nelze vkládat přímo tímto způsobem. LaTeX umí pracovat pouze s textovými formáty souborů (čemuž vyhovují pouze některé vektorové formáty). Bitmapové obrázky je potřeba převést na vhodný vektorový formát (buď EPS nebo PDF). V dokumentaci balíku graphics je sice popsán způsob, jak v dokumentu nastavit vhodný konverzní program, který se použije během překladu, ale já si myslím, že ta námaha nestojí za to. Jednodušší je převést si obrázky ručně do požadovaného vektorového formátu a pak je vložit známým způsobem.

Při vkládání bitmapových obrázků (i konvertovaných do EPS nebo PDF) je však potřeba dát si pozor na použité rozlišení. Tyto obrázky by se měly vkládat zásadně v nativním rozlišení - to znamená nepoužívat parametr scale s hodnotou různou od jedné nebo width či height u příkazu \includegraphics.

\begin{figure}
  \centering
  \includegraphics[scale=1]{img/bitmapa.eps}
\end{figure}

Pokud je potřeba změnit rozměry takového obrázku, specializovaný grafický program, jako třeba Gimp, to zvládne vždy kvalitněji než LaTeX. Úprava rozměrů přímo v LaTeXu mívá za následek rozmazané nebo naopak zubaté čáry.

Tvorba vektorových obrázků

Platí nepsané pravidlo, že pokud jsou v dokumentu potřeba obrázky, používáme především vektorové formáty. Bitmapový obrázek lze použít jen když nelze nakreslit jeho vektorovou alternativu (fotky, screenshoty). Grafy, diagramy, technické náčrty a podobně, by měly být vždy kresleny pomocí vektorů. Obrovskou výhodou vektorových obrázků oproti bitmapovým je to, že neztrácejí kvalitu po operacích jako změna měřítka nebo otočení.

Pro tvorbu vektorových obrázků je potřeba najít vhodný vektorový editor. Pokud jde o volně dostupné vektorové editory, jsou ve výrazné výhodě uživatelé Linuxu, kteří mají k dispozici množství kvalitních nástrojů. Mám dojem, že ve Windows jsou v převaze spíše bitmapové editory a vektorové bývají spíše šířeny komerčně (ale můžu se mýlit).

Osobně používám pro tvorbu vektorových obrázků program Xfig. Jde o stařičký program (první verze vznikla v roce 1985) s, na dnešní dobu, podivným ovládáním, ale jeho možnosti tento nedostatek plně kompenzují. Největší předností je množství formátů, do kterých lze obrázky exportovat. Zde je několik ukázek:

Hlavní editační okno editoru. Možnosti nastavení při exportu obrázku. Množství formátů, do kterých lze obrázek exportovat.

Všimněte si, že obrázky lze exportovat i přímo do LaTeXových souborů. V tom případě se vygeneruje LaTeXový soubor, který pro vykreslení všech tvarů používá LaTeXové příkazy. Tento soubor se potom do dokumentu vkládá pomocí příkazu \include nebo \input. Nevýhodou tohoto programu je, že neumí používat správně české fonty. Této nepříjemnosti se však dá zbavit právě tím, že obrázek exportujeme do některého z LaTeXových formátů.


Autor: David Martinek. Poslední modifikace: 24. February 2008. Pokud v tomto dokumentu narazíte na chybu, dejte mi prosím vědět.