LaTeX-kuvat

Deltawikistä
Siirry navigaatioon Siirry hakuun

Kuvien lisääminen LaTeXilla tehtyihin töihin on tuiki tärkeä taito, jota joutuu käyttämään usein. Se on periaatteessa helppoa, mutta sisätää myös tiettyjä hankaluuksia.

Teknisesti kuvan voi lisätä LaTeX-dokumenttiin kahdella eri tavalla: tiedostona tai luomalla sen LaTeXin omilla komennoilla. Jälkimmäinen sopii lähinnä yksinkertaisten kaavioiden piirtämiseen, mutta on sitäkin päheempää osata :) Jotkin ohjelmat, kuten Gnuplot, osaavat tulostaa kuvat LaTeX-koodina, jolloin tätä ominaisuutta voi käyttää monimutkaisempiinkin kuvaajiin!

Kuvan lisääminen tiedostona[muokkaa]

Normaali vastaantuleva ongelma on, kuinka valmiiksi olemassaolevan kuvan voi lisätä LaTeXilla tehtyyn dokumenttiin. Periaatteessa se on yhtä helppoa kuin kaavojen tekeminen: se vaatii sopivaa \usepackage-komentoa dokumentin määrittelyosaan ja erityisen figure-ympäristön luomista itse dokumenttiin. Dokumentin määrittelyosan kuuluisi siis näyttää esimerkiksi tältä:

\documentclass[a4paper,12pt,english,finnish]{article}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{amssymb,amsthm,amsmath}
\usepackage{graphicx} %Tällä paketilla saadaan kuvia mukaan

\begin{document}
%ja tänne tulee taas itse dokumentti
\end{document}

Kun määrittelyosa on kunnossa, äärimmäisen yksinkertaistetusti kuvan, jonka nimi on “jousi.jpg” saa lisättyä itse dokumenttiosaan komennolla \includegraphics näin:

\begin{figure}
\includegraphics[]{jousi.jpg}
\end{figure}

Käytännössä homma ei valitettavasti tällä kertaa ole ihan näin simppeliä. LaTeX pyrkii nimittäin muotoilemaan sivut käännösvaiheessa tiettyjen sääntöjen mukaan ja se saattaa tuottaa rankasti harmaita hiuksia kuvien suhteen. Lisäksi kuvassa pitää käytännössä aina olla mukana kuvateksti ja siihen on pystyttävä myös viittaamaan muualta tekstistä.

Aloitetaan tarkempi säätäminen viimeksimainituista. Esimerkiksi teksti

Työn toisessa vaiheessa tutkittiin jousivakiota.

\begin{figure} \label{joujou}
\includegraphics[]{jousi.jpg}
\caption{Jousen venyminen venyttävän voiman funktiona.}
\end{figure}

Kuvassa \ref{joujou} on esitetty tutkitun jousen venyminen erilaisten venyttävien voimien vaikutuksesta.

Tässä esimerkissä kuvan alapuolelle syntyy kuvateksti “Kuva 1: Jousen venyminen...” ja itse tekstissä todetaan “Kuvassa 1 on esitetty...”. Helppoa kuin mikä.

Ongelmia kuitenkin syntyy siitä, että LaTeXille kuva on niin kutsuttu “kelluva objekti” eli LaTeX sijoittaa sen sinne, minne se kulloinkin parhaiten sattuu sopimaan. Käytännössä kuva siis voi sijoittua käännösvaiheessa hyvinkin kauaksi sitä ympäröivästi tekstistä. Tämä on oikeasti kiusallinen piirre!

Ensimmäisenä apuna voidaan kokeilla kuvan koon muuttamista. Se on yleensä tehtävä joka tapauksessa.

\begin{figure} \label{joujou}
\includegraphics[width = 0.5\textwidth]{jousi.jpg} %tässä muutetaan kuvan kokoa
\caption{Jousen venyminen venyttävän voiman funktiona.}
\end{figure}

Nyt komennolle \includegraphics on annettu parametri “width”. Tähän saakka LaTeX on sijoittanut kuvan dokumenttiin sen kokoisena kuin se on. Nyt sille määrätään koko, joka on puolet sivulle tulevan tekstin leveydestä ja korkeus skaalautuu vastaavasti. Mitta voidaan myös antaa absoluuttisena:

\begin{figure} \label{joujou}
\includegraphics[width = 5cm]{jousi.jpg} %tässäkin muutetaan kuvan kokoa
\caption{Jousen venyminen venyttävän voiman funktiona.}
\end{figure}

Nyt kuvan leveys on 5cm kun dokumenti tulostetaan A4-kokoiselle paperille (tämähän määriteltiin dokumentin määrittelyosassa).

Joskus kuvaa voi olla tarpeen kiertää. Se tapahtuu kätevästi parametrilla “angle”:

\begin{figure} \label{joujou}
\includegraphics[width = 5cm, angle = 270]{jousi.jpg} %nyt kierretään kuvaa
\caption{Jousen venyminen venyttävän voiman funktiona.}
\end{figure}

Nyt kuvaa kierretään 270 astetta vastapäivään eli 90 astetta myötäpäivään.

Jos ja kun kuvan koon muuttaminen ei auta, kuvan sijoituksesta voi myös antaa “toivomuksen” esimerkiksi jos kirjoitetaan

\begin{figure}[ht] \label{joujou} %toivotaan kuvan sijoittamista
\includegraphics[width = 5cm]{jousi.jpg}
\caption{Jousen venyminen venyttävän voiman funktiona.}
\end{figure}

niin merkintä [ht] kertoo kääntäjälle että ellei kuvaa voi sijoittaa tekstissä juuri tähän kohtaan (“h” niin kuin “here”), se pitää sijoittaa sivun yläosaan (“t” niin kuin “top”). Vastaavasti voitaisiin käyttää ohjetta “b” niin kuin “bottom” joloin kuva sijoitetaan sivun alaosaan.

Perussääntönä muista aina, että älä murehdi kuvien sijoittumisesta dokumenttiin ennen kuin kaikki teksti on kirjoitettu!

Valmiin kuvan tiedostomuoto[muokkaa]

Valmiiden kuvien suhteen tulee ongelmia kuvan tiedostomuodon kanssa. Jos yhdenkin kuvan tiedostomuoto on “tavanomainen” kuten .jpg, .jpeg, .gif, .png tai vaikkapa .pdf, käännös on tehtävä suoraan PDF:ksi komennolla pdflatex, sillä PS- ja ja DVI-tiedostomuodot eivät osaa näyttää tällaisia kuvia. Toisaalta, jos joku kuvista on muotoa .ps tai .eps, käännöstä ei voi tehdä suoraan PDF:ksi vaan dokumentista on tehtävä komennolla latex ensin DVI- ja sitten PS-tiedosto ja käännettävä se lopuksi PDF:ksi.

Sekatilanteessa kannattaa ensin muuttaa .ps ja .eps kuvat .pdf-tiedostomuotoon ja lisätä ne dokumenttiin vasta sitten ja kääntää koko roska pdflatexilla.

LaTeX-koodina olevan kuvan lisääminen[muokkaa]

Kuvan kirjoittaminen käsin[muokkaa]