Oletetaan, että meillä on joukko kuvia ja haluamme tehdä niistä kuvagallerian seuraavasti:
Oletetaan lisäksi, että kuvat ovat keskenään samassa formaatissa, esim. kaikki GIF-kuvia tai kaikki JPEG-kuvia.
Asia voidaan hoitaa seuraavasti:
kissa.gif
,
niin rivillä on kissa
)
Möttösen kissan ristiäiskahvit
)
Möttösen <em>söpö</em> kissa
...)
1.gif
vastaavista tiedoista):
1 Geneerinen paimenkoira Tämä kuva esittää lähinnä collieta mutta on tarkoitettu kuvaamaan yleisesti paimenkoirarotua. Kissanristiäisten kanssa tällä ei ole mitään erityistä tekemistä, vaan kyseessä on pelkkä <em>esimerkki</em>.
Oheinen Perl-esimerkkiohjelma havainnollistaa, miten halutut toimenpiteet voitaisiin tehdä. Seuraavassa on esimerkki sillä tehdyn sivuston yhdestä sivusta; koska kyse on kokoelman ensimmäisestä kuvasta, sillä ei ole linkkiä edelliseen sivuun. (Toki ohjelma voitaisiin tehdä niin, että kuvat ovat rengasmaisessa järjestyksessä eli ensimmäistä edeltävä kuva on viimeinen sivu, mutta tämän tarpeellisuus on kyseenalaista.)
Geneerinen paimenkoira
Tämä kuva esittää lähinnä collieta mutta on tarkoitettu kuvaamaan yleisesti paimenkoirarotua. Kissanristiäisten kanssa tällä ei ole mitään erityistä tekemistä, vaan kyseessä on pelkkä esimerkki.
Muutamia esimerkkiohjelman selityksiä, jotka ehkä auttavat muokkaamaan sitä tilanteen ja tarpeiden mukaiseksi:
$juttu
arvo kertoo koko kuvakokoelman yleisen
otsikon
kuv.txt
, joka on
tietysti muutettavissa halutuksi
while
-silmukka lukee kuvaustiedoston
sisällön taulukoihin; se on siten sidoksissa tiedoston rakenteeseen,
ja rakenteen muuttaminen edellyttää vastaavia muutoksia silmukkaan,
ja tähän on syytä ryhtyä vain, jos kohtuullisesti osaa Perliä
KUV
ovat
ohjelmansisäisiä muuttujia, "tiedostokahvoja",
joita ei tarvitse muuttaa, vaikka
tiedostojen nimiä muutettaisiin
print INDEX <<END;
(ja vastaavasti rakenne
print KUVASIVU <<END;
)
merkitsee, että ohjelma kopioi seuraavat rivit tiedostoon,
johon INDEX
(vast. KUVASIVU
) viittaa,
kunnes tulee vastaan rivi, jolla on teksti END
;
kopioinnissa ohjelma kuitenkin korvaa Perl-muuttujat kuten
$juttu
arvoillaan.
Esimerkki on tarkoituksellisesti alkeellinen.
Käytännössä olisi yleensä parasta liittää joka sivulle
selväkielinen maininta siitä, mihin kokonaisuuteen se liittyy,
mahdollisesti myös tekijyysmerkintä. Nämä voitaisiin
hoitaa seuraavaan tapaan: Lisätään for
-silmukan
sisään, juuri riviä close(KUVASIVU)
,
seuraavat lauseet:
print KUVASIVU "<p align=\"center\"><cite>$juttu</cite>.", "© $vuosi <a href=\"../\">$nimi</a></p>";
Tässä kirjoitetaan kuvasivutiedostoon muutamia merkkijonoja,
jotka muodostavat yksinkertaisen HTML-merkkauksen. Huomaa, että
Perlissä merkkijonon rajoittimina ovat tavallisesti lainausmerkit.
Kun tulostettavassa merkkijonossa itsessään halutaan esiintyvän
lainausmerkki, se esitetään kirjoittamalla sen eteen kenoviiva
\
, eli esim. \"center\"
tulostuu
muodossa "center"
.
Tämän muutoksen jälkeen sivun lopussa näkyisi seuraavanlainen teksti:
Kuvia kissanristiäisistä.© 1999 Matti Meikäläinen
Tämä dokumentti on Jukka Korpelan Web-julkaisemisen oppaan liite ja liittyy lähinnä sen lukuun Työkaluja.