Dokumentation der awk-Skripte makesmall
und
makealbum
zur Albumerzeugung
Versionsinformation:
Die jeweils letzten Eintragungen für Dokumentation und Software sind die aktuellen. | ||
Diese Dokumentation | 0.1 | 2006-03-01 |
0.2 | 2006-03-04 | |
0.2.1 | 2006-03-06 | |
0.2.2 | 2006-03-07 | |
0.2.3 | 2006-03-08 | |
Dokumentierte Software | 0.1 | 2006-03-01 |
0.2 | 2006-03-05 | |
0.2.1 | 2006-03-07 |
1. Einleitung
Zweck
Die Shell-Skripte makesmall
und makealbum
erzeugen aus einer
Sammlung von jpeg-Grafiken ein Album, das auf HTML beruht und für
die Veröffentlichung im Web geeignet ist.
Entstehung
Es gibt vielleicht 10 000 Skripte oder andere Software zur Erzeugung von Online-Alben (Galerien) aus digitalen Bildern. Ich hatte keine Lust, mir eines auszusuchen und zu verstehen, daher habe ich selbst Skripte gemacht.
Es sind vier awk-Skripte entstanden, die über die zwei genannten
Shell-Skripte makesmall
und makealbum
genutzt
werden können. Wie das geht, wird in dieser Dokumentation beschrieben.
Außerdem gehört zu der Software eine Muster- Stylesheet-Datei (eine
CSS-Datei) und ein Beispiel für eine Steuerdatei für
makealbum
. Alle diese Dateien können einfach aus diesem
Dokument heraus downgeloadet werden (siehe Abschnitt 2).
Übersicht
Mit makesmall
wird aus einer Sammlung von (großen)
jpeg-Bildern eine Sammlung von entsprechenden kleinen Bildern
(Thumbnails) erzeugt. Die Thumbnails sind ebenfalls
jpeg-Bilder.
Das Shell-Skrip makealbum
erzeugt aus der Sammlung von großen
Bildern, zugehörigen kleinen
Bildern und einer Steuerdatei die restlichen benötigten Dateien.
Dabei handelt es sich um eine Übersichts-Webseite, auf der die Thumbnails
angezeigt werden, und jeweils eine Webseite für jedes Bild. Durch Klick auf
einen Thumbnail auf der Übersichtsseite erreicht man die Seite mit dem
großen Bild. Von dort kann man zurück zur Übersicht gelangen, man kann sich
aber auch zwischen den großen Bildern vorwärts und rückwärts bewegen.
Die Steuerdatei ist eine
Textdatei, die vom Anwender erstellt werden muss. Sie enthält vor allem die
beschreibenden Texte zu den Bildern und legt (unter anderem) die Reihenfolge
der Bilder im Album fest.
Das Layout des Albums kann durch eine Stylesheet-Datei modifiziert werden. Diese Stylesheet-Datei kann auf der Grundlage der oben erwähnten Muster-Styleshheet-Datei erstellt werden.
Hinweis: Die Erzeugung beziehungsweise Anpassung der großen Bilder (typischerweise sind es digitale Fotos) wird nicht beschrieben. Diese müssen vorhanden sein.
Beispiele
Die Seite FH Eberswalde, Bilder enthält Links auf Bildersammlungen, die mit dieser Software erzeugt wurden. Möglicherweise wurde dabei eine ältere Version der Software verwendet.
Warnung
Diese Software ist frei verwendbar. Es wird keinerlei Gewährleistung für die Funktionsfähigkeit oder Eignung der Software für irgend einen Zweck übernommen. Es wird auch nicht garantiert, dass die Software keinen Schaden anrichtet.
Es kann sein, dass die Software Ihren Computer beschädigt,
zerstört, Ihre Daten zerstört oder verfälscht, bösartiger Software
Einbruchsmöglichkeiten verschafft oder selbst bösartig ist.
Es kann sein, dass die Software erhebliche andere Sachwerte zerstört oder
beschädigt.
Es kann sein, dass die Software Krankheiten, auch psychische, verursacht oder
verschlimmert.
Die alleinige Verantwortung liegt bei dem/der Anwender/in.
2. Installation
Prüfen der Voraussetzungen
Folgende Software muss vorhanden sein:
- Das Programm awk.
- Das Programm convert, Bestandteil von ImageMagick.
- Das Programm identify, ebenfalls Bestandteil von ImageMagick.
Auf Linux-Systemen ist diese Software oft schon installiert. Wenn nicht, sollte die Nachinstallation leicht möglich sein.
Ich weiß nicht, ob es diese Software auch für Windows gibt.
Das Vorhandensein der benötigten Software kann unter Linux durch Eingabe von
awk --version
convert -version
identify -version
in einer Shell (Konsole) geprüft werden (gegebenenfalls
--version
durch -version
ersetzen oder umgekehrt).
Die benötigten Dateien
Die folgenden Dateien bilden die Software. Die ersten sechs sind
obligatorisch. Die zwei letzten Dateien (album.css
und
texte.beispiel
) sind fakultativ.
Kopieren der Dateien an geeignete Stellen, Anpassung
Die ersten beiden Dateien (makesmall
und
makealbum
)
sind Shell-Skripte. Sie müssen an eine Stelle kopiert werden, die im
normalen Pfad für ausführbare Dateien ist, zum Beispiel
/usr/bin
. Bei mir sind sie in /root/bin
.
Die vier Dateien mit der Namenserweiterung .awk
sind
awk-Skripte, sie können irgendwo
hin kopiert werden, wo alle Nutzer/innen Lesezugriff haben (bei mir sind sie
auch in /root/bin
). In jeweils der zweiten Zeile von
makesmall
und makealbum
wird ein Pfad mit Namen
albumpath
definiert, es muss sich um den Pfad zu den
awk-Skripten handeln. Gegebenenfalls sind diese Definition daher
anzupassen.
Die awk-Skripte sollten
world-lesbar sein, die Shell-Skripte sollten world-lesbar
und world-ausführbar sein.
Die Stylesheet-Datei album.css
kann irgendwohin kopiert
werden, wo sie von allen gelesen werden kann. Ihre Verwendung ist
fakultativ. Sie spielt die Rolle einer kommentierten Vorlage (eines
templates) zur Erstellung eigener Stylesheets.
Die Datei texte.beispiel
ist nur eine Beispieldatei für die
zur Steuerung des Skripts makealbum
benötigten Datei
texte
. Am Ende dieser Dokumentation ist
ein weiteres Beispiel für die Steuerdatei
texte
zu finden.
3. Erzeugung von kleinen Bildern aus großen Bildern
Dazu dient das Shell-Skript makesmall
. Voraussetzungen für
die Nutzung: Alle großen Bilder sind im aktuellen Verzeichnis.
Aufruf:
makesmall [geometry] "filemask"
Dabei steht filemask
für eine Datei-Suchmaske der Dateien, die auf die jpg
-Dateien
passt, von denen Thumbnails erzeugt werden sollen, und geometry
steht für die Größe der zu erzeugenden Thumbnails in der Form
widthxheight. Beispiel:
makesmall 120x90 "te*.jpg"
erzeugt Thumbnails von allen Dateien im aktuellen Verzeichnis, die auf
die Maske te*.jpg
passen. Die erzeugten Thumbnails haben die
maximale Größe 120x90 (Breite x Höhe). Das Verhältnis von Breite zu Höhe
bleibt wie beim Originalbild, gegebenenfalls wird eine Seite stärker
verkleinert.
Die Anführungszeichen um die Dateimaske sind notwendig (sonst wird nur
die erste passende Datei verarbeitet). Alternativ können auch einfache
Quotes verwendet werden: 'te*.jpg'
funktioniert auch.
Die Angabe von geometry ist optional. Fehlt geometry,
so wird 160x120
verwendet. Wenn geometry spezifiziert
werden soll, muss es das erste Argument sein.
Die erzeugten Dateien stehen im aktuellen Verzeichnis. Die Namen der
neuen Dateien entstehen aus den Namen der alten Dateien durch Einschieben
von .klein
vor die Dateinamenserweiterung .jpg
.
Zum Beispiel entsteht aus der Datei haus.jpg
der Thumbnail
haus.klein.jpg
.
Hinweis
Die erzeugten Thumbnail-Dateien sind auch jpg
-Dateien, die
möglicherweise auf die Dateimaske, die beim Aufruf von makesmall
verwendet wird, passen.
Das kann ein Problem sein, wenn makesmall
mehrfach im gleichen
Verzeichnis aufgerufen wird. Dann werden nämlich möglicherweise Thumbnails
von Thumbnails erzeugt (mit Namen der Art
[name].klein.klein.jpg
).
Man sollte also entweder ein Maske verwenden, die .klein.jpg
am Ende des Dateinamens ausschließt, oder verhandene Thumbnails löschen,
bevor neue erzeugt werden.
4. Erzeugung der HTML-Dateien
Das Shell-Skript makealbum
erzeugt die Übersichtsseite mit den
Thumbnails und die HTML-Seiten für die einzelnen Bilder.
Allgemeines zu makealbum
, Voraussetzungen
Die Aktionen von makealbum
werden durch die beim Aufruf
übergebenen Argumente und durch eine Textdatei (Steuerdatei) gesteuert.
Es müssen die folgenden Voraussetzungen erfüllt sein:
- Alle aufzunehmenden Bilder (
jpg
-Dateien) sowie die zugehörigen Thumbnails müssen im aktuellen Verzeichnis sein. Die Namen der Thumbnails müssen so sein, wie sie vonmakesmall
erzeugt werden (mit eingeschobenem.klein
, siehe oben). - Die Steuerdatei muss im aktuellen Verzeichnis sein, sie muss
texte
heißen und eine bestimmte Struktur haben (siehe den folgenden Unterabschnitt Struktur der Steuerdateitexte
).
Arbeitsweise von makealbum
Die erzeugten HTML-Dateien werden in das aktuelle Verzeichnis
geschrieben. Die Übersichtsseite erhält den Namen index.html
.
Die HTML-Dateien für die einzelnen Bilder heißen so wie die Bilder, es wird
nur die Namenserweiterung .jpg
durch .html
ersetzt.
Warnung
Alte HTML-Dateien mit gleichen Namen wie die zu erzeugenden Dateien werden
ohne Vorwarnung überschrieben. Eine Datei mit Namen index.html
wird, wenn sie im aktuellen Verzeichnis ist, stillschweigend überschrieben.
Das kann unerwartet
sein.
Die HTML-Dateien für die Einzelbilder werden explizit einzeln
gelöscht. Wenn keine alten Versionen dieser Dateien vorhanden sind,
werden bei den Löschversuchen Fehlermeldungen erzeugt (für jede nicht
vorhandene Datei eine Fehlermeldung). Diese Fehlermeldungen kann man
ignorieren.
Es wird empfohlen, die erzeugten HTML-Dateien auf syntaktische
Richtigkeit zu prüfen, zum Beispiel mit dem Programm tidy
(tidy ist vom
World Wide Web Consortium zu erhalten).
Zumindest sollte man nach Änderungen gelegentlich die Übersichtsseite
index.html
und einige der Einzelseiten prüfen.
Aufruf, Argumente
Aufruf:
makealbum [border=border] [columns=columns]
[style=style]
Beispiel:
makealbum border=1 columns=5 style=s1
Es sind drei Argumente möglich, alle drei sind fakultativ. Für
weggelassene Argumente werden die unten angegebenen Standardwerte verwendet.
Die Reihenfolge der Argumente ist beliebig. Alle haben die Form
name=wert
Die Werte sind ganze Zahlen für border
und columns
und ein einfache Zeichenkette für style
. Die Werte dürfen nicht
in Anführungszeichen eingeschlossen werden.
Innerhalb eines Arguments dürfen keine Leerzeichen stehen, auch nicht vor
oder nach dem Gleichheitszeichen.
Bedeutung der Argumente
border
Mögliche Werte: Nichtnegative ganze Zahlen (0, 1, 2, ...).
Standardwert:border=0
border
bezieht sich auf das border-Attribut im table-Element von HTML. In den HTML-Seiten für die Einzelbilder werden Tabellen für die Positionierung der darzustellenden Komponenten (Bild, Text) verwendet. Der Wert desborder
-Arguments wird als border-Attribut im erzeugten HTML-Code verwendet. Normalerweise dürfte der Standardwert 0 richtig sein (keine Grenzen zwischen den Zellen der Tabellen), der Wert 1 eignet sich für den Test des Layouts. Andere Werte sind möglicherweise sinnlos.
Dasborder
-Argument hat keinen Einfluss auf die Übersichtsseiteindex.html
. Dort wird im HTML-Quelltextborder="0"
als table-Attribut verwendet.
columns
Mögliche Werte: Die ganzen Zahlen 3, 4, 5, 6
Standardwert:columns=4
Der Wert voncolumns
ist die Zahl der Spalten mit Thumbnails (oder Platzhaltern, siehe unten) in der Übersichtsseite. Zum Beispiel bewirkt der Standardwert, dass vier Thumbnails nebeneinander in einer Tabellenzeile stehen.
-
style
Mögliche Werte: Eine Zeichenkette (die ein Dateiname sein soll), oder die leere Zeichenkette (das heißt, imstyle
-Argument folgt nichts auf das Gleichheitsszeichen)
Standardwert: Nichts (keine Stylesheet-Datei definiert; das ist äquivalent zur leeren Zeichenkette)
An den Wert vonstyle
wird, wenn er nicht leer ist, die Zeichenkette ".css" angehängt, das Ergebnis wird als Name einer Stylesheet-Datei angesehen. Ein Pfad kann instyle
enthalten sein.
Zum Beispiel bewirkt die Angabe
style=s1
dass im akuellen Verzeichnis nach der Dateis1.css
gesucht wird und diese Datei, wenn sie gefunden wird, als CSS-Datei (Cascading Style Sheet) zur Formatierung verwendet wird.
Die Angabe von
style=../s2
bewirkt die Suche der Stylesheet-Dateis2.css
im übergeordneten Verzeichnis.
Die leere Zeichenkette (äquivalent: Weglassen desstyle
-Arguments) bewirkt, dass keine Stylesheet-Datei verwendet wird. Die erzeugten HTML-Dateien enthalten dann keinen Verweis auf eine Stylesheet-Datei.
Mehr zur Verwendung von Stylesheet-Dateien
Damit die Verwendung von Stylesheet-Dateien (Cascading Style Sheets,
CSS, in der offiziellen Terminologie) sinnvoll funktioniert, müssen
die Styles auf die Elemente der erzeugten HTML-Dateien anwendbar sein. Die
erzeugten HTML-Dateien enthalten daher einige class
-Attribute,
die die differenzierte Anwendung von Styles erleichtern sollen.
Die zur Software gehörende Datei album.css
kann als Beispiel
verwendet werden. Sie enthält Kommentare, die die Anpassung an die
Bedürfnisse der Nutzer/innen erleichtern sollten.
Die Verwendung von Stylesheets ist aber nicht unbedingt notwendig. Die
erzeugten HTML-Dateien sollten auch ohne Stylesheets vernünftig verwendbar
sein.
Ansonsten wird auf die Literatur zu Cascading Style Sheets und auf
die entprechenden Webseiten
(www.w3.org/Style/CSS/)
des World Wide Web Consortiums verwiesen.
Struktur der Steuerdatei texte
Die Datei ist zeilenweise aufgebaut. Zeilen können mit einem Code der
Form
:{letter}
beginnen, wobei {letter} ein Kleinbuchstabe ist. Die Bedeutung hängt dann
vom konkreten Code, das heißt vom Buchstaben {letter} ab. Der eigentliche
Inhalt ist das, was hinter dem Code steht. Der Code
:{letter}
muss die ersten zwei Zeichen der Zeile einnehmen. Davor
darf nichts stehen, auch kein Leerraum.
Zeilen, die nicht mit einem Doppelpunkt beginnen, werden als Dateinamen für
Bilder interpretiert.
Die Datei besteht aus einem allgemeinen Teil, einem speziellen Teil (Teil
für jedes Bild) und (fakultativen) Kommentarzeilen. Abgesehen von den
Kommentarzeilen und den Zeilen mit den Codes :g
und
:h
müssen die Zeilen in einer bestimmten Reihenfolge geschrieben
werden. Der spezielle Teil folgt dem allgemeinen Teil.
Kommentarzeilen
Kommentarzeilen sind solche, die mit dem Code :c beginnen. Im Gegensatz zu den anderen Zeilen können Sie in beliebiger Anzahl an beliebigen Stelle stehen. Kommentarzeilen werden von den Skripten übergangen.
Allgemeiner Teil
Der allgemeine Teil besteht aus Zeilen mit den Codes :a, :b, :e, :t, :g, :h (im Prinzip in dieser Reihenfolge; siehe unten).
- Der Inhalt der :a-Zeile sollte den Namen des Autors der
texte
-Datei enthalten. Diese Zeile soll vorhanden sein, und sie soll die erste sein. - Der Inhalt der :b-Zeile soll den Namen des Autors der Bilder enthalten. Diese Zeile soll, wenn vorhanden, die zweite sein. Sie kann denselben Inhalt wie die :a-Zeile enthalten.
- Der Inhalt der :e-Zeile soll eine E-Mail-Adresse enthalten, auf die die Betrachter/innen der Bilder verwiesen werden können.
- Der Inhalt der :t-Zeile ist der Titel des Albums. Die Zeile muss vorhanden sein. Diese Zeile muss unbedingt nach der :a-Zeile und vor den :g- und :h-Zeilen stehen.
- Der Inhalt der :g-Zeilen ist allgemeiner Einführungstext für die Betrachter/innen.
- Der Inhalt der :h-Zeile enthält zusätzliche Hinweise, zum Beispiel für den Prozess der Erstellung und Diskussion der Seite.
Es sollte jeweils genau eine Zeile der Typen :a, :b, :e, :t geben, und diese Zeilen sollten in dieser Reihenfolge eingegeben werden. Die :g- und :h-Zeilen am Ende des allgemein Teils dürfen mehrfach und in beliebigem Wechsel vorkommen. Die :g-Zeile darf einfaches HTML-Markup enthalten (zum Beispiel die Tags <em>, <strong<, <br />; auch Links sind erlaubt). Die :h-Zeile darf nur die Tags <strong> und <br /> enthalten. Jede :g- und jede :h-Zeile erzeugt einen Absatz im Sinne von HTML, das heisst, der Inhalt dieser Zeilen wird in der erzeugten HTML-Datei in <p> ... </p> eingeschlossen. Die :h-Zeilen werden innen zusätzlich in <em> ... </em> eingeschlossen und daher kursiv angezeigt.
Die Zeilen dürfen in der texte
-Datei nicht umgebrochen werden,
das heißt, sie müssen auch technisch aus genau einer Zeile bestehen. Bei
Umbrüchen würde der umgebrochene Teil als Dateinamen interpretiert werden,
da er (vermutlich) nicht mit einem Code beginnt.
Eine exakte Längenbegrenzung für die Zeilen gibt es nicht, sie sollten sinnvolle Längen in Bezug zum Inhalt und der Verwendung haben. Also dürfen zum Beispiel :g- und :h-Zeilen ziemlich lang sein (ihr Inhalt wird für Absätze verwendet), die :t-Zeile sollte kurz sein (der Inhalt der t:-Zeile wird im <title>-Element im Kopfteil und in der Hauptüberschrift der Einzel-HTML-Seiten verwendet).
Spezieller Teil
Es müssen Daten für jedes Bild definiert werden. Alternativ kann anstelle
eines Bildes auch ein Platzhalter definiert werden. Die Zahl der Bilder
(inklusive Platzhalter) muss durch den Wert von columns
teilbar
sein; falls der Standardwert für columns
verwendet wird, also
durch vier. Diese Forderung ergibt sich
aus der Anordnung der kleinen Bilder in der Datei index.html
in Form einer Tabelle mit columns
Spalten.
Der spezielle Teil besteht aus einem Block aus genau drei Zeilen für jedes Bild (abgesehen von möglicherweise vorhandenen Kommentarzeilen):
- Eine Zeile, die nicht mit einem Doppelpunkt beginnt. Der Text in dieser Zeile wird als Name der zugehörigen Bilddatei angesehen (ohne Dateinamenserweiterung). Alternativ kann diese Zeile mit :p beginnen (Platzhalter, siehe unten).
- Die folgende Zeile beginnt mit :k, ihr Inhalt ist der kurze Text zum Bild (kein HTML-Markup).
- Die letzte Zeile des Blocks beginnt mit :l, ihr Inhalt ist der lange Text zum Bild.
Die Zeile, die mit :l beginnt, kann einfaches html-Markup enthalten (auch Links, aber keine Tabellen, keine Formulare; kein Javascript).
Bitte auch hier keine Zeile umbrechen. Dateinamenszeile (beziehungsweise :p-Zeile, siehe unten), :k-Zeile und :l-Zeile unbedingt in dieser Reihenfolge eingeben.
Platzhalter anstelle Bild
Es kann sinnvoll oder notwendig sein, den Platz eines kleinen Bilder auf der
Übersichtstabelle alternativ mit einem Text zu füllen oder leer zu lassen
(im Folgenden "Platzhalter" genannt).
Das ist zum Beispiel der Fall, wenn die Zahl der Bilder nicht durch
columns
teilbar ist. Die Platzhalter-Blöcke können beliebig zwischen die Bildblöcke
geschoben werden, die Gesamtzahl der Blöcke (Platzhalterblöcke und Bildblöcke)
muss durch columns
teilbar sein.
Ein Platzhalterblock in der Steuerdatei besteht wie ein Bildblock aus genau
drei Zeilen, die erste Zeile enthält statt eines Dateinamens den Code :p und
anschließend den Text. Dieser Text wird in dem Bereich platziert, in dem
sonst das kleine Bild (Thumbnail) auf der Übersichtsseite erscheint.
Die zwei anderen Zeilen des Platzhalterblocks sind wie beim normalen
Bildblock. Der Inhalt der zweiten Zeile (die mit :k beginnt) erscheint auch an
der selben Stelle, der Inhalt der dritten Zeile (:l-Zeile) wird ignoriert,
daher genügt hier die Eingabe des Codes:
:l
Es dürfen alle Zeilen in einem Platzhalter-Block leer sein, es darf aber
keine dieser drei "Pflichtzeilen" weggelassen werden. Die kürzeste Variante
ist daher
:p
:k
:l
Zusammenfassung der Zeilencodes
:a | Autor |
:b | Bildautor |
:e | E-Mail-Adresse |
:c | Kommentar (Mnemonik: comment) |
:t | Titel |
:g | Allgemeines (Mnemonik: general). Hier ist einfaches HTML-Markup erlaubt. |
:h | Weitere Hinweise. Hier sind <strong> und <br /> erlaubt. |
:k | Kurze Bildbeschreibung |
:l | Lange Bildbeschreibung. Hier ist einfaches HTML-Markup erlaubt. |
:p | Platzhalter (Text anstelle Dateinamen). Hier ist einfaches HTML-Markup erlaubt. |
5. Veröffentlichen (Publizieren) im Web
Im Wesentlichen genügt es, die ursprünglichen Bilder, die Thumbnails der
ursprünglichen Bilder (also die .klein.jpg
-Dateien) und alle
von makealbum
erzeugten HTML-Dateien in ein Verzeichnis auf dem
Webserver zu übertragen. Wenn eine Stylesheet-Datei verwendet wird, muss sie
auch in das richtige Serververzeichnis kopiert werden.
Die von makealbum
erzeugte
Übersichtsseite index.html
ist dann die Startseite in diesem
Verzeichnis, sie muss typischerweise in der Webadresse nicht angegeben
werden. Es reicht der Pfad bis zu diesem Verzeichnis.
Die Steuerdatei texte
wird auf dem Webserver nicht benötigt.
Die Datei index.html
enthält einen Link mit dem Linktext
Zurück zur Gesamtübersicht und der Adresse
href="../index.html"
. Dieser Link führt also auf die
Datei index.html
im übergeordneten Verzeichnis. Falls das nicht
gewünscht wird, muss der Link entsprechend angepasst werden.
Es wird empfohlen, jedes Album in einem eigenen Verzeichnis
unterzubringen. Die index.html
-Datei des übergeordneten
Verzeichnisses sollte einen Link auf jedes Album haben, das sich in einem
Unterverzeichnis dieses übergeordneten Verzeichnisses befindet.
Stylesheet-Dateien, die nur von einem Album verwendet werden, sollten mit in
dem Verzeichnis des Albums stehen. Ansonsten kann auch die Speicherung im
übergeordneten Verzeichnis sinnvoll sein. Damit die HTML-Dateien den
richtigen Bezug auf die Stylesheet-Datei enthalten, muss das Album mit einem
Aufruf der Art
makealbum style=st
beziehungsweise
makealbum style=../st
erstellt worden sein.
Anforderungen an den Webserver
Es genügt ein einfacher Webserver. Serverseitige Techniken (wie php, perl, asp, ...) werden nicht verwendet.
Anforderungen an die Webbrowser
Es genügt ein Browser, der mit Tabellen und jpeg-Grafiken umgehen kann. Weiterhin ist es wünschenswert, dass der Browser mit Cascading Style Sheets (CSS) umgehen kann. Es funktioniert aber auch ohne Berücksichtigung der Stylesheets, dann sieht nur das Layout anders aus. Weitere clientseitige Techniken (wie zum Beispiel Javascript, Java, Flash) werden nicht verwendet.
6. Weitere Hinweise
Das Skript makealbum
erzeugt bei einer syntaktisch falschen
texte
-Datei wahrscheinlich keine leicht verständliche
Fehlermeldung. Wahrscheinlich entsteht dabei syntaktisch fehlerhafter
HTML-Code.
Fehlerhaftes HTML wird wahrscheinlich auch erzeugt, wenn die Zahl der Blöcke
im speziellen Teil nicht durch den Wert des columns
-Arguments
teilbar ist.
Lösung: Den Wert von columns
ändern, oder Platzhalter-Blöcke einfügen.
Bei Erfülltsein der Voraussetzungen erzeugt makealbum
immer
syntaktisch richtiges HTML in der Version HTML 4.01 Transitional.
Abweichungen von diesem Anspruch sind also als Fehler in den Skripten zu
betrachten.
Die direkte Verwendung der awk-Skripte (unter Umgehung der
Shell-Skripte makesmall
und makealbum
) ermöglicht
nur geringfügig detaillierte Steuerungen. Es ist auf diesem Weg zum Beispiel
möglich, andere Dateinamen als texte
oder
index.html
zu verwenden.
Natürlich können die erzeugten HTML-Dateien nachbearbeitet werden.
Allerdings ergibt das bei häufiger Wiederholung der Album-Erzeugung mit
denselben (oder teilweise denselben) Bildern einen ungünstigen
Arbeitsablauf. Die Nachbearbeitung müsste nach jedem Aufruf von
makealbum
wiederholt werden. Besser wäre es, die Skripte
so anzupassen, dass die Nachbearbeitung nicht mehr nötig ist. Siehe dazu
auch den folgenden Abschnitt.
7. Erweiterungen und Verbesserungen
Die folgenden Erweiterungen und Verbesserungen erscheinen sinnvoll.
- Die Stylesheets-Funktionalität könnten ausgebaut werden. Für wichtige Layout-Festlegung sollten einfachere Wege geschaffen werden als das Editieren der Stylesheet-Datei.
- Möglicherweise lassen sich eine genauere Steuerungsinformationen in die
Steuerdatei
texte
aufnehmen (wie die Anordnung von Bildern und Textteilen, oder auch Style-Informationen). - Es sollte die automatische Extraktion und Anzeige von EXIF-Informationen
ermöglicht werden, wenn die angezeigten
jpg
-Dateien EXIF-Informationen enthalten.