Author: Stefan Spaeth
Description: Beispiele für createPhotoWebPages.pl

# createPhotoWebPages.pl - Beispiele

zurück zur Hauptseite

- Schritt 1 : Bilder suchen und ordnen
- Schritt 2 : Konfigurationsdatei abändern
- Schritt 3 : Erzeugen der HTML-Seiten als Entwurf
- Schritt 4 : Umbenennen, Kommentieren und Drehen der Bilder
- Schritt 5 : Änderungen einbringen

In diesem Abschnitt soll anhand eines kleinen Beispiels nochmals die Vorgehensweise verdeutlichen.
Nehmen wir an es existiert ein Unterverzeichnis namens "./images", in dem folgende Dateien abgelegt sind:

        YellowBoxVertical.Jpg  bluebox3.gif          GreenBoxVertical.Jpg
        Blue_Box.jpeg          REDBOX3.jpg           RedBox.JPG
        blue_box2.jpeg         test.txt              violet_box.png

Nehmen wir weiterhin an es existiert ein Unterverzeichnis namens "./images/Not-A-Box", in dem folgende Dateien abgelegt sind:

        BLACKCircle.PNG        RED_CIRCLE.GIF        violetSquare.jpg

Die folgende Tabelle zeigt die (sehr kleinen) Bilder im Original.

Verzeichnis `./images`
YellowBoxVertical.Jpg | bluebox3.gif | GreenBoxVertical.Jpg
Blue_Box.jpeg | REDBOX3.jpg | RedBox.JPG
blue_box2.jpeg | "test.txt" ist kein Bild! | violet_box.png
Verzeichnis `./images/Not-A-Box`
BLACKCircle.PNG | RED_CIRCLE.GIF | violetSquare.jpg

zurück nach oben

## Schritt 1 : Bilder suchen und ordnen

Es werden zuerst die Bilddateien erfasst, alphabetisch nach dem Dateinamen sortiert (ohne Berücksichtigung der Groß-und Kleinschreibung). und mit einem alphabetischen Präfix versehen. Dateiendungen werden von Groß- in Kleinbuchstaben gewandelt und schließlich wird eine Konfigurationsdatei ("selection-after-scan.txt") erzeugt.

Folgende Befehlszeile ist notwendig:

          createPhotoWebPages.pl -verbose                 \
                                 -scan                    \
                                 -order name              \
                                 -rename -ext -prefix     \
                                 selection-after-scan.txt \
                                 ./images

Die Ausgabe des scripts ist unten beispielhaft abgedruckt (bei Angabe der Option "-verbose"). Wie aus den Meldungen ersichtlich werden die Ausgaben auch in der Datei "selection-after-scan.txt.log" mitprotokolliert.

    ###############################################################
    #### createPhotoWebPages.pl v2.3.09, 06.10.2002
    ###############################################################
    Finished option processing, starting execution of script ...
     info: Parsing selection list and configuration file selection-after-scan.txt ...
     info: Processing configuration parameters read from file selection-after-scan.txt ...
     info: Scanning for image files ...
     info: Processing image information ...
     info: Trying to extract jhead info for ./images/Blue_Box.jpeg ...
     info: Image infos ./images/Blue_Box.jpeg: type jpg, size 975 Bytes, 64 x 48, date: 2002-02-11 (Datei), time: 20:33:48 (Datei)
     info: Trying to extract jhead info for ./images/blue_box2.jpeg ...
     info: Image infos ./images/blue_box2.jpeg: type jpg, size 1.51 kBytes, 64 x 48, date: 2002-02-11 (Datei), time: 20:35:28 (Datei)
     info: Trying to extract GIF and PNG info for ./images/bluebox3.gif ...
     info: Image infos ./images/bluebox3.gif: type gif, size N/A, 64 x 48, date: N/A, time: N/A
     info: Trying to extract jhead info for ./images/GreenBoxVertical.Jpg ...
     info: Image infos ./images/GreenBoxVertical.Jpg: type jpg, size 864 Bytes, 48 x 64, date: 2002-02-11 (Datei), time: 20:38:48 (Datei)
     info: Trying to extract GIF and PNG info for ./images/Not-A-Box/BLACKCircle.PNG ...
     info: Image infos ./images/Not-A-Box/BLACKCircle.PNG: type png, size N/A, 64 x 48, date: N/A, time: N/A
     info: Trying to extract GIF and PNG info for ./images/Not-A-Box/RED_CIRCLE.GIF ...
     info: Image infos ./images/Not-A-Box/RED_CIRCLE.GIF: type gif, size N/A, 48 x 64, date: N/A, time: N/A
     info: Trying to extract jhead info for ./images/Not-A-Box/violetSquare.jpg ...
     info: Image infos ./images/Not-A-Box/violetSquare.jpg: type jpg, size 1.52 kBytes, 64 x 64, date: 2002-02-11 (Datei), time: 20:53:46 (Datei)
     info: Trying to extract jhead info for ./images/RedBox.JPG ...
     info: Image infos ./images/RedBox.JPG: type jpg, size 889 Bytes, 64 x 48, date: 2002-02-11 (Datei), time: 20:31:33 (Datei)
     info: Trying to extract jhead info for ./images/REDBOX3.jpg ...
     info: Image infos ./images/REDBOX3.jpg: type jpg, size 1.49 kBytes, 48 x 64, date: 2002-02-11 (Datei), time: 20:52:01 (Datei)
     info: Trying to extract GIF and PNG info for ./images/violet_box.png ...
     info: Image infos ./images/violet_box.png: type png, size N/A, 64 x 48, date: N/A, time: N/A
     info: Trying to extract jhead info for ./images/YellowBoxVertical.Jpg ...
     info: Image infos ./images/YellowBoxVertical.Jpg: type jpg, size 895 Bytes, 48 x 64, date: 2002-02-11 (Datei), time: 20:45:07 (Datei)
     info: Processing image filenames ...
     info: Renaming image files (if required) ...
     info: Renaming image ./images/Blue_Box.jpeg into ./images/aa_BlueBox.jpeg ...
     info: Renaming image ./images/blue_box2.jpeg into ./images/ab_blue_box2.jpeg ...
     info: Renaming image ./images/bluebox3.gif into ./images/ac_bluebox3.gif ...
     info: Renaming image ./images/GreenBoxVertical.Jpg into ./images/ad_GreenBoxVertical.jpg ...
     info: Renaming image ./images/Not-A-Box/BLACKCircle.PNG into ./images/Not-A-Box/ae_BLACKCircle.png ...
     info: Renaming image ./images/Not-A-Box/RED_CIRCLE.GIF into ./images/Not-A-Box/af_RED_CIRCLE.gif ...
     info: Renaming image ./images/Not-A-Box/violetSquare.jpg into ./images/Not-A-Box/ag_violetSquare.jpg ...
     info: Renaming image ./images/RedBox.JPG into ./images/ah_RedBox.jpg ...
     info: Renaming image ./images/REDBOX3.jpg into ./images/ai_REDBOX3.jpg ...
     info: Renaming image ./images/violet_box.png into ./images/aj_violet_box.png ...
     info: Renaming image ./images/YellowBoxVertical.Jpg into ./images/ak_YellowBoxVertical.jpg ...
     info: Writing back selection list and configuration file selection-after-scan.txt ...
     info: Generation of HTML files not requested.
     info: Generation of image files not requested.
     info: Finished perl script /home/sspaeth/perl/createPhotoWebPages.pl.

Zwei Dateien wurden im Arbeitsverzeichnis "./" angelegt.

- die Konfigurationsdatei selection-after-scan.txt, sowie
- die Log-Datei selection-after-scan.txt.log.

Sieht man sich die Dateinamen in den Verzeichnissen "./images" und "./images/Not-A-Box" an, so ist Folgendes zu sehen. Alle Bilder haben einen Präfix "aa_" usw. erhalten. Dateiendungen mit Großbuchstaben wurden in Kleinbuchstaben umgewandelt.
Die Datei "test.txt" wird - wie zu erwarten war - ignoriert, da sie nicht als Bilddatei erkannt wird.

Die Bilddateien sind wie folgt sortiert und umbenannt (und tauchen in dieser Reihenfolge in der Konfigurationsdatei auf).

      ./images/aa_BlueBox.jpeg
      ./images/ab_blue_box2.jpeg
      ./images/ac_bluebox3.gif
      ./images/ad_GreenBoxVertical.jpg
      ./images/Not-A-Box/ae_BLACKCircle.png
      ./images/Not-A-Box/ag_violetSquare.jpg
      ./images/Not-A-Box/af_RED_CIRCLE.gif
      ./images/ah_RedBox.jpg
      ./images/ai_REDBOX3.jpg
      ./images/aj_violet_box.png
      ./images/ak_YellowBoxVertical.jpg

Ein kleiner Schönheitsfehler ist die Tatsache, daß Unterverzeichnisse leider innerhalb der Dateien einsortiert werden. Die Dateien im Verzeichnis "./images" werden dadurch auseinandergerissen.

Der nächste Abschnitt zeigt wie man das einfach beheben kann.

zurück nach oben

## Schritt 2 : Konfigurationsdatei abändern

Wir benennen die Konfigurationsdatei nun in "selection-before-rename.txt" um (was normalerweise nicht notwendig ist). Diese Datei wird nun nach unseren Wünschen abgeändert.
Und das soll getan werden:

- Wir bewegen zuerst die Bilder des Verzeichnisses "./images" alle an den Anfang.
- Sodann erzeugen wir für die Bilder der Verzeichnisse "./images" und "./images/Not-A-Box" eigene Gruppen mit getrennten Thumbnail-HTML-Seiten und eigenen Untertiteln ("SUBTITLE").
- Weiterhin werden einige allgemeine Einträge an unsere Bedürfnisse angepaßt.

Die erzeugte neue Konfigurationsdatei heisst selection-before-rename.txt.

Reinschauen kostet nichts - man kann sogar noch was lernen ;-)
Geändert oder ergänzt wurden (unter anderem) folgende Einträge:
`TITLE`
`EMAIL`
`LEVEL_UP`
`HTML_CREATE_TOP`
`HTML_TOP_CAPTION`
`HTML_TOP_BACK`
`HTML_TOP_TEXT`
`SUBTITLE`
`HTML_SUB_TEXT`

zurück nach oben

## Schritt 3 : Erzeugen der HTML-Seiten als Entwurf

So, und jetzt erzeugen wir uns erst mal richtige HTML-Seiten:

          createPhotoWebPages.pl -verbose                    \
                                 selection-before-rename.txt

Die Log-Datei befindet sich wie üblich unter selection-before-rename.txt.log.

Die Ergebnisse können in der HTML-Datei examples/pages-before-rename/index.html begutachtet werden.

Das sieht doch schon ganz gut aus. Aber einige Bilder sind noch nicht richtig herum gedreht und die Bildbeschriftungen und Bild-Dateinamen gefallen uns auch nicht. Also nochmal die Konfigurationsdatei abändern ...

zurück nach oben

## Schritt 4 : Umbenennen, Kommentieren und Drehen der Bilder

Wir benennen die Konfigurationsdatei nun in "selection-after-rename.txt" um (was normalerweise nicht notwendig ist). Diese Datei wird erneut nach unseren Wünschen abgeändert.

Wir haben gesehen, daß das Bild "Green Box Vertical" um 90 Grad und das Bild "Yellow Box Vertical" um 270 Grad gedreht werden sollte (entgegen dem Uhrzeigersinn). Dies läßt sich durch einen entsprechenden "IMAGE_ROT"-Eintrag bewerkstelligen.

Daneben wollen wir alle Bildnamen "eindeutschen" und hier und da noch etwas Zusatztext hinzufügen. Bei dem ein oder anderen JPEG-Bild soll auch noch die EXIF-Info-Seite erstellt werden ("IMAGE_INFO"-Eintrag).
Als Auswahl für die Top-Thumbnail-Seite sollen die Bilder "REDBOX 3" und "RED CIRCLE" eingetragen werden ("IMAGE_SEL"-Eintrag).

Die erzeugte neue Konfigurationsdatei heisst selection-after-rename.txt.

So, und jetzt erzeugen wir uns erst mal neue HTML-Seiten. Man beachte die "-rename" Option. Ohne sie werden die Originale nicht gedreht, und auch die Bild-Dateinamen werden nicht geändert.

          createPhotoWebPages.pl -verbose                    \
                                 -rename                     \
                                 selection-after-rename.txt

Die Log-Datei befindet sich wie üblich unter selection-after-rename.txt.log.

Die Ergebnisse können in der HTML-Datei examples/pages-after-rename/index.html begutachtet werden.

Man beachte, daß die Konfigurationsdatei selection-after-rename.txt während der script-Ausführung überschrieben wird. Zum Beispiel sind alle "IMAGE_ROT"-Einträge auf 0 zurückgesetzt und die neuen Bild-Dateinamen eingetragen.

zurück nach oben

## Schritt 5 : Änderungen einbringen

Alle weiteren Schritte sind ganz dem persönlichen Geschmack überlassen.

Man kann zum Experimentieren einfach die Datei my-selection.txt abändern und dann das script neu aufrufen.

Folgender Aufruf ist z.B. möglich:

          createPhotoWebPages.pl -verbose          \
                                 my-selection.txt

Die Log-Datei befindet sich wie üblich unter my-selection.txt.log.

Die Ergebnisse können in der HTML-Datei examples/index.html begutachtet werden.

Hier noch ein weiteres Beispiel:

Die folgenden Einträge wurden geändert:
`THUMBNAIL_ROTATION_ANGLE = 2`
`THUMBNAIL_RANDOM_ROTATE = 1`
`WEB_READY = 1`
`TARGET_DIR = ./web-ready-pages/`
und die Konfigurationsdatei unter selection-web-ready.txt abgelegt.

Der Aufruf sieht so aus:

          createPhotoWebPages.pl -verbose          \
                                 selection-web-ready.txt

Das Ergebnis ist in der HTML-Datei examples/web-ready-pages/index.html zu finden.

In diesem Beispiel werden die Thumbnail-Bilder etwas gedreht was zu einem interessanten Gesamteindruck führt. Außerdem kann man dieses Verzeichnis frei kopieren, da Verbindungen zu den Originalbildern jetzt fehlen.

Den Experimenten sind also keine Grenzen gesetzt.

zurück nach oben, zurück zur Hauptseite