fotoindex
Beschreibung
Funktion
Aufbau legende.txt
Darstellung
Geometrie
Farben/Fonts/Styles
WWW-Seiten
Exif-Daten
Dokumentation
makealbum
Beschreibung
Funktion
Darstellung
Geometrie
Farben/Fonts
Dokumentation
Download
|
Galerien mit - fotoindex
Version 3.0 - Februar 2007
Fotoindex ist ein Perl-Skript zum
Erzeugen von Bildergalerien im HTML-Format.
Der ursprüngliche Zweck war der Einsatz auf CDs/DVDs auf denen Bilder
archiviert sind. Mit Hilfe der von fotoindex erzeugten Galerien kann schnell
ein Überblick über die gespeicherten Bilder gewonnnen werden.
Um keine Problem mit verschiedenen Browsern und deren Versionen zu bekommen.
wurde auf möglichst einfach HTML-Code geachtet,
CSS wenig benutzt (abschaltbar) und kein Java implementiert (mit Ausnahme der
"Back"-Buttons)
Neu in Version 3.0
- Einführung von Sortiernummern um unabhängig vom Namen sortieren zu
können. (-numsort|-namesort)
- PDF-Files werden mit eingebunden und im Default PDF-Reader angezeigt
- Die Exif-Daten von jpg-Bildern werden ausgelesen und in einem Extra-Fenster angezeigt
- ca. 30 verschiedene Styles, die in einem config-File verändert werden können (Liste mit fotoindex -h)
- Parameter der Styles stehen in einem Konfigurationsfile, welches editiert werden kann.
- Mit -writeicons kann Programm- und Bild-(DATA-)Teil getrennt werden, um Bildteil
neu zu gestalten.
- Mit -appendicons können weitere Hintergrundbilder angehängt werden
- Mit -overview wird eine html-Gallerie erzeugt mit einem Überblick über alle styles
- Durch ein File 'background.jpg' im mid_size Directory wird das im Stylefile eingestellte
Hintergundbild überschrieben. Hintergund kann damit einfach individuell geändert werden.
- Bilder-Tabelle lässt sich unabhängig vom übrigen Fenster scrollen.
(abschaltbar mit -nocss).
- Hintergrundbild steht fest und wird nicht mitgescrollt (abschaltbar mit -nocss).
- Tabellen mit nicht gesetztem Hintergrund sind transparent.
- Optional wird in die Datensätze ein Feld 'Bibl' eingefügt
für bibiographische Angaben zur Auswertung mit einer Datenbank.
neu aufzubauen.
- Writeprotectflag im legende.txt schützt vor dem Überschreiben.
- Mit -logrename wird der alte Name des Bildes dem bisherigen Inhalt des
bibl-Feldes angehängt und bleibt damit für Recherchen erhalten.
- Gallerien, die mit älteren Versionen von fotoindex erzeugt wurden,
können mit neueren Versionen problemlos weiter bearbeitet werden.
TOP
Funktion
Beim Aufruf erfasst fotoindex alle jpg-, gif- und tiff-Dateien im aktuellen oder angegebenen Directory.
Von den gefundenen Bildern werden in getrennten Subdirectories Thumbnails und ein mittleres
Format (600x800 Pixel oder auch wählbar 1024x768 Pixel) der Bilder erzeugt.Dazu wird das
Programm convert aus dem Packet
image magick
benutzt.
Weiter wird (wenn noch nicht vorhanden) eine Datei "legende.txt" angelegt, welche aus Kopf-
und Bild-Teil besteht. Im Kopfteil werden alle zentralen Angaben eingetragen, im Bildteil
werden für jedes Bild ein mehrzeiliger Datensatz eingetragen mit bildspezifischen Angaben.
Automatisch eingetragen werden dort der Dateiname und die Zeit der Bilderstellung,
falls im Exif-Teil eine solche Zeit gefunden wird.
Danach wird eine Datei "index.html" erzeugt in der die Thumbnails in einer Tabelle mit der
gewählten Anzahl Bilder pro Zeile angeordnet sind. Unter jedem Thumbnail stehen
Dateiname und Aufnahmezeit.
Die Datei "legende.txt" kann nun editiert werden. Nach einem erneuten Aufruf von
fotoindex wird die HTML-Datei "index.html" neu erzeugt und die
Angaben aus "legende.txt" in die HTML-Dateien übernommen.
Das Thumbnail ist ein Link auf ein Fenster mit demselben Bild in dem mittleren Format,
dem Text aus den Zeilen "Inhalt", "Bibl" und "Comment" und Navigations-Buttons.
Das Bild im Mittelformat und der Dateiname in der Galerie sind Links auf ein neues
Fenster mit dem Originalbild.
Durch Einfügen von Untertiteln kann die Tabelle unterbrochen werden. Es erscheinen
mehrere Tabellen übereinander mit dem jeweiligen Untertitel als Überschrift.
Mit dem Parameter -style in der Kommandozeile können Farben und Hintergundbilder
gewählt werden. Die entsprechenden Parameter stehen im Konfigurationsfile (Default-
Name 'fistyle.conf'). Dort sind entsprechende Erweiterung einfach zu machen. Z.Z sind ca.
30 Styles definiert.
Alle Parameter, die in der Kommandozeile eingegeben werden, werden im legende.txt abgespeichert
und müssen nur diejenigen erneut eingegeben werden, die geändert werden sollen.
TOP
Aufbau von legende.txt
Die Datei "legende.txt ist eine ASCII-Datei und kann mit jedem Editor bearbeitet
werden. Im Kopfteil stehen die Daten welche die durch fotoindex
zu bildende HTML bestimmen, danach die Datensätze für jedes einzelne Bild.
# Legende zu den Bildern im Directory schaffhausen
# angelegt von /home/strub/bin/fotoindex
Titel : Titel der Beispielseite
Titelbild : beispiel_001.jpg
Style : ubuntu - tab - nocss - exif
Writeprotect : no
---------------------------------------------------------
Anzperline : 5 # Dont edit!
Midsize-Format : 800x600
---------------------------------------------------------
Basicname : beispiel_
Erste_Nr : 001
Sortmode : numsort
Startno : 1
Prolog : Der Prolog enthält Text(e) welche die Fotos beschreibt, die Umstände unter denen
sie entstanden oder irgendeinen Unsinn der hierher passt oder auch nicht. Der Prolog kann auch
Leerzeilen enthalten. Deshalb muss der Abstand im "legende.text" zu der darauffolgenden Zeile
mindenstens 2 Leerzeilen betragen.
Überschriften können mit normalen HTML-Tags <h4> .... </h4> gebildet werden.
# ------------------------------------------------
Subtitel : Teil 1
Name : beispiel_001.jpg
Sortno : 01
Datum Aufnahme : 21.08.2005 16:23
Inhalt :
Drehen : 0
Bibl :
Kommentar :
Name : beispiel_002.jpg
Sortno : 02
Datum Aufnahme : 21.08.2005 16:25
Inhalt : Der Munot
Drehen : 0
Bibl :
Kommentar : zu Schaffhausen.
Von Osten her bei Regenwetter.
Name : beispiel_003.jpg
Sortno : 03
Datum Aufnahme : 21.08.2005 16:26
Inhalt :
Drehen : 0
Bibl :
Kommentar :
Name : beispiel_004.jpg
Sortno : 04
Datum Aufnahme : 21.08.2005 16:26
Inhalt :
Drehen : 0
Bibl :
Kommentar :
|
Kopfteil
- Titel: Hier wird der Titel angegeben. Fehlt diese Angabe wird der Directory-Name
als Titel eingesetzt.
- Titelbild: Angabe des Titelbildes. Das Titelbild wird von Script makealbum benötigt.
Beim ersten Aufruf wird hier das erste Bild eingesetzt.
- Style : Farbliche und geometrische Anordnungen. Diese sind hier notiert,
damit bei einem späteren Aufruf diese Parameter in der Komandozeile nur angegeben werden
müssen, wenn eine Änderung erfolgen soll.
- WriteprotectDurchh Setzen auf 'yes' werden alle Dateien vor überschreiben
geschützt.
- Anzperline : Anzahl der Bilder pro Zeile. Sollte nicht editiert werden
sondern über die Kommandozeile veraendert werden.
- Midsize-Format: Grösse des Midsize-Bildes in Pixel: 600x800 oder 768x1024.
Sollte nicht editiert werden sondern über die Kommandozeile veraendert werden.
- Basicname:Der vordere Teil der Dateinamen, der für alle Dateien gleich ist.
Wird von der rename-Funktion benutzt
- Erste_Nr:Nummer des ersten Bildes, wird von der
rename-Funktion benutzt
- sortmode Kann numsort oder namesort enthalten
- startno Startnummer im numsort-Modus
- Prolog:Beliebiger mehrzeiliger Text, der unter dem Titel
angeordnet wird. Er darf auch Leerzeilen enthalten und muss mit zwei Leerzeilen
beeendet werden.
Bildteil
- Name : Name der Bilddatei, wird von fotoindex erfasst
- Sortno: Sortiernummer im numsort-Modus.
- Datum Aufnahme :Aufnahmedatum und -zeit aus
Exifteil des Bildes. Kann geändert werden, sollte dann
aber mit einem nachfolgenden Ausrufzeichen gegen überschreiben
geschützt werden.
- Inhalt : Kurzbezeichnung des Bildinhalts, erscheint im
Index und in der Midsize-Darstellung unter dem Bild.
- Drehen : Drehwinkel, um den das Bild beim nächsten Aufruf
von fotoindex gedreht werden soll. Nach dem Ausführen der Drehung setzt
fotoindex den Winkel auf Null
- Bibl : Feld für bibliografische Angaben. Erscheint nur
mit der Option -bibl oder -logrename.
- Kommentar : Beliebiger Text zu dem Bild. Kann auch mehrzeilig sein.
Endet mit einer Leerzeile. Wird in der Midsize-Darstellung angezeigt.
Funktionen die über legende.txt gesteuert werden
- Drehen Durch Eintrag eines Winkels in grad (UZS = positiver Wert,
GUZS = negativer Wert) wird beim nächsten Aufruf das Bild durch fotoindex
entsprechend gedreht und dann der Winkel wieder aug Null gesetzt
- Verschieben Es stehen zwei unterschiedliche Sortiermethoden
zur Verfügung, bei denen sich auch der Mechanismus des Verschiebens
unterscheidet.
Sortieren nach den Bildnamen
Wird hinter den Eintrag Name ein '>> neue Nummer'
geschrieben und danach fotoindex mit der option -rename aufgerufen, wird die Datei
entsprechend umbenannt und an der entsprechenden Stelle einsortiert.
Beispiel: Name : img_125 >> 56a
Datei wird umbenannt in img_056a, eingeordnet nach img_056 und
dann alle Namen neu durchnummeriert entsprechend Basicname und Erste_Nummer
im Kopfteil
Sortieren nach Sortiernummern
Die Sortiernummern im Feld Sortno können beliebig editiert werden. Bei jedem
Aufruf von fotoindex im Modus numsort werden die Bilder entsprechend ihren
Nummern neu sortiert wobei die Sortno auf ganzzahlige Werte gesetzt werden.
Bei gleichen Nummern werden sie nach Namen sortiert.
Zum Einfügen können Dezimalzahlen verwendet werden.
Beispiel: Die Bilder mit Sortno 10.1 und 10.2 werden nach dem Bild mit der
Nummer 10 eingeordnet und erhalten dann die Nummern 11 und 12 alle folgenden
Bilder werden entsprechend verschoben..
- UnterteilenZwischen zwei Bilddatensätzen kann eine Zeile
Subtitel : Text des Untertitels
eingefügt werden. Beim nächsten Aufruf von fotoindex wird die Indextabelle an
dieser Stelle unterbrochen der Untertitel ausgegeben und mit einer neuen
Tabelle der Index fortgesetzt. Statt 'Subtitel' kann auch 'subtitle' oder
'Untertitel' mit Gross- oder Kleinschreibung des ersten Buchstabens verwendet
werden. In der Darstellung 'long' werden alle Thumbnails zwischen zwei Untertiteln
nebeneinander angeordnet
TOP
WählbareDarstellungen
Für den Index sind verschiedene Darstellungen möglich.
Geometrische Anordnung
Durch die Angabe von -short (oder -tab) in der Kommandozeile werden
die Bilder in zeilenweise mit fester Anzahl Bilder pro Zeile angeordnet. Die
Anzahl der Bilder wird durch eine Zahl in der Kommandozeile gewählt.
Durch die Angabe von -long in der Kommandzeile werden alle Bilder zwischen
zwei Untertiteln nebeneinander gesetzt.
Darstellung im 'long'-Format - style ubuntu
TOP
Farben, Fonts und Styles
Im Moment sind drei farblich unterschiedliche Darstellungen fest implementiert. Sie werden
in der Kommandozeile eingestellt durch -style <name>
- ubuntu In Brauntönnen
- windows In Blau- und Grautönen
- blackwhite In schwarz und Weiss
Weitere Styles sind in der Datei fistyles.conf implementiert. Die
zugehörigen Bilder für den Hintergrund sind im __Data__-Anhang
des Perlscripts fotoindex gespeichert. Sollen weitere Styles in
das conf-File eingetragen werden, mit neuen Hintergrundbildern, müssen
diese im Array @backpictures (am Anfang des Scripts) eingetragen werden und
anschliessend mit fotoindex -appendicons dem Script
angehangen werden. Dadurch bilden Script und Hintergrundbilder eine
Einheit und können problemlos weiter gegeben werden.
Mit der Option -overview [<directory>] wird eine Übersicht über
alle vorhandenen Styles in Form einen HTML-Galerie overview.html im angegebenen
Directory (Default = fotoindex_overview) erzeugt.
Um den __DATA__-Teil völlig neu zu gestalten, kann mit der
Option -writeicons [<directory>] in dem angegebenen Directory
(Default : fotoindex_icondir) das Script wieder zerlegt werden in den
Programmteil 'fotoindex-pgm' und sämtliche im __DATA__ -Teil
gespeicherten Hintergrundbilder und Icons. Die alten Namen müssen
dann in den Arrays @backpictures und @buttonpicts durch die neuen ersetzt
werden. Mit fotoindex -appendicons werden dann die neuen Bilder
wieder angehängt.
TOP
Beispiel style windows
TOP
Beispiel style blackwhite
Die Farben und Fonts sind in dem Script und einem Hash zusammengefasst. Weiter
Styles koennen in der Datei fistyles.conf notiert werden. Wird beim Start diese
Datei gefunden, werden die in ihr definierten Styles eingelesen. Der Dateipfad
steht im Kopf des Scripts und kann angepasst werden.
ist ein Style test eingebaut, der durch die sehr verschiedenen Farben die Zuordnung
erleichtert.
Beispiel style test
TOP
Mit der Option -overview [<directory>] wird eine Übersicht über
alle vorhandenen Styles in Form einen HTML-Galerie overview.html im angegebenen
Directory (Default = fotoindex_overview) erzeugt.
Die Gallerie overview.html
TOP
Aufbau der Datei fistyle.conf
Für jeden Style enthält die Datei fistyle.conf einen
Datensatz mit allen einstellbarebnn Parameter. Der name des Style
steht am Beginn des satzes in eckigen Klammern. Mischfarben
sollten unbedingt in der hexadezimalen Schreibweise angegeben
werden, da die Farbnamen auf verschiedenen Betriebsystemen
nicht einheitlich sind.
Die Namen der Felder im untenstehenden Beispiel für
zwei Styles ('acre1' und 'beige') sind selbsterklärend,
Kommentare (ganzzeilig) können mit einem '#' am Zeilenbeginn
eingefügt werden.
#######################################
# Styles for fotoindex and makealbum #
#######################################
#
# Use only simple color name like white, black, yellow, blue etc.
# All mixed colors should describe in hex RGB notation.
# For comments at end of line use ##
#
# lightgrey = #d3d3d3
# grey = #bebebe
# GreenYellow = #adff2f
# aquamarine = #7fffd4
# gold = #ffd700
# brown = #a52a2a
# OliveDrab = #6b8e23
#
# --------------------------------------------------------------------------
[acre1]
bodybgcolor #cdc8b1
bodybgpict bg-erde01.jpg
tabbgcolor1 #8d7e6a
tablebgpict1
tabbgcolor2 #8d7e6a
tablebgpict2
link #8b8878
vlink #8b8878
border 1
textcolor yellow
fonttitle <font face="Arial,sans-serif" color="black" size="6"><B>
fontsubtitle <font face="Arial,sans-serif" color="white" size="4"><B>
fontprolog <font face="Arial,sans-serif" color="black" size=3>
fontexplain <font face="Arial,sans-serif" color="#d3d3d3" size=2> ## lightgrey
fontname <font face="Arial,sans-serif" color="#d3d3d3" size=2>
fontinhalt <font face="Arial,sans-serif" color="white" size=2>
midbgcolor #333333
midbgpict bg-erde01.jpg
midtabcolor1
midtabpict1
midtabcolor2 black
midtabpict2
midfont <font face="Arial,sans-serif" color="white" size=3>
prevbutton prev-sim.gif
nextbutton next-sim.gif
startbutton start-sim.gif
endebutton ende-sim.gif
exitbutton exit-sim.gif
siteback siteback.jpg
# --------------------------------------------------------------------------
[beige]
bodybgcolor #cdc8b1
bodybgpict bg-beigemauer.jpg
tabbgcolor1
tablebgpict1
tabbgcolor2 #cdc0b0
tablebgpict2 bg-beigemauer.jpg
link #8b8878
vlink #8b8878
border 1
textcolor black
fonttitle <font face="Arial,sans-serif" color="black" size="6"><B>
fontsubtitle <font face="Arial,sans-serif" color="black" size="4"><B>
fontprolog <font face="Arial,sans-serif" color="black" size=3>
fontexplain <font face="Arial,sans-serif" color="#8b4513" size=2>
fontname <font face="Arial,sans-serif" color="#8b4513" size=2>
fontinhalt <font face="Arial,sans-serif" color="black" size=2>
midbgcolor #333333
midbgpict bg-beigemauer.jpg
midtabcolor1 #833333
midtabpict1 bg-beigemauer.jpg
midtabcolor2 #3b3325
midtabpict2
midfont <font face="Arial,sans-serif" color="white" size=3>
prevbutton prev-sim.gif
nextbutton next-sim.gif
startbutton start-sim.gif
endebutton ende-sim.gif
exitbutton exit-sim.gif
siteback siteback.jpg
# --------------------------------------------------------------------------
|
TOP
Erzeugen von Indexes für Webseiten
Soll der Index auf einer Website verwendet werden, sind die Links auf die Originalbilder
(wegen deren Grösse) meist nicht sinnvoll. Mit der Option -withoutorig oder -woo
werden diese Links nicht erzeugt, die Originalbilder werden also nicht mehr aufgerufen und
daher auch nicht mehr gebraucht.
Anzeige der Exif-Daten
Mit der Option -exif (abschalten mit -noexif) wird in der Midsize-Darstellung
ein Link erzeugt auf ein neues Browserfenster mit den Exifdaten. Für das Auslesen der
Exif-Daten aus den Bildern werden die externen Programme
'exif','exiftags','jhead'
in dieser Reihenfolge gesucht. Eines dieser Programme muss also auf dem System installiert
sein. Falls andere externe Programme genutzt werden sollen, kann deren Name im Array '@exifreader'
(am Anfang des Scripts) eingetragen werden.
Die EXIF-Daten des Programms 'exif'
Dokumentation
Eine Kurzdokumentation in Englisch kann mit fotoindex -h aufgerufen werden. Eine ausführlichere mit
perldoc fotoindex
TOP
|