Dieses Skript hilft, alle oder viele Bilder in einem Verzeichnis auf einen rechteckigen Ausschnitt zuzuschneiden.
Die Prozedur script-fu-de-herbaer-select-dir
erwartet die folgenden Parameter:
dir-in
- Quell-VerzeichnisDer Pfad des Verzeichnisses, in dem die Original-Bilddateien liegen, ohne einen abschließenden Schrägstrich.
dir-out
- Ziel-VerzeichnisDer Pfad des Zielverzeichnisses ohne einen abschließenden Schrägstrich. Im Verzeichnis dir-out
werden die zugeschnittenen Bilder unter dem gleichen Dateinamen wie die Originalbilder gespeichert.
replace
- Dateien ersetzenreplace
kann die Werte TRUE
(1) oder FALSE
(0) annehmen. Der Wert FALSE
bedeutet, dass eine Datei im Verzeichnis dir-in
ignoriert wird, wenn im Verzeichnis dir-out
eine Datei mit demselben Namen existiert.
Die erste Bilddatei im Quell-Verzeichnis dir-in
wird geöffnet. Sie können einen Bereich auswählen. Die Prozedur script-fu-de-herbaer-process-dir
(Menüpunkt Filter → Verzeichnis → Weiter) schneidet das Bild auf die Auswahl zu und speichert es im Ziel-Verzeichnis dir-out
. Zusätzlich speichert sie eine .scm
-Datei mit den Daten des Ausschnitts. Sie schließt das Bild und öffnet das nächste Bild im Quell-Verzeichnis, falls vorhanden. Wenn keine Auswahl existiert, wird im Ziel-Verzeichnis nichts gespeichert.
Die Dateien process-dir.scm
(Quelle) und select-dir.scm
sind in ein Gimp-Skript-Verzeichnis zu kopieren. Beim Start von Gimp werden sie automatisch geladen.
Die .scm
-Datei mit den Daten des Ausschnitts hat den folgenden Aufbau:
(nameFILENAME
img-sizeWIDTH
HEIGHT
sel-offsetX
Y
sel-sizeSELWIDTH
SELHEIGHT
)
FILENAME
Der Dateiname der Bilddatei in Anführungszeichen
WIDTH
Die Breite des Originalbildes
HEIGHT
Die Höhe des Originalbildes
X
Der Abstand des linken Randes des Ausschnitts vom linken Rand des Originalbildes
Y
Der Abstand des oberen Randes des Ausschnitts vom oberen Rand des Originalbildes
SELWIDTH
Die Breite des Ausschnitts
SELHEIGHT
Die Höhe des Ausschnitts
Alle Maße sind in Pixeln angegeben.
Ein Beispiel für den Dateiinhalt ist
(name "bild.jpg" img-size 3968 2976 sel-offset 1474 814 sel-size 1034 1034)
Der Name der .scm
-Datei ist der Dateiname des Bildes mit dem Suffix .scm
anstelle des Bilddatei-Suffixes oder nach dem Bilddatei-Suffix.
Die Prozedur script-fu-de-herbaer-select-dir
ruft die Prozedur de-herbaer-process-dir
aus dem Skript process-dir.scm
(Quelle) auf. Die Prozedur de-herbaer-select-dir
definiert die Verarbeitung eines einzelnen Bildes. Ihr Parameter sind:
image
Die Kennung des aktuellen Bildes
step
0 : Das Bild ist neu geöffnet |
1 : Das Bild wird geschlossen |
Im Falle
ergibt die Prozedur step
= 0de-herbaer-select-dir
#f
. Das Bild bleibt zur interaktiven Bearbeitung geöffnet.
Wenn keine Eingabe erfolgt ist, die das Bild betrifft, oder wenn keine Auswahl existiert, ist das Ergebnis (#f #f)
. Das Bild wird geschlossen, und es wird keine weitere Datei geschrieben.
Sonst wird das Bild auf das kleinste Rechteck zugeschnitten, das die Auswahl umfasst. Das Ergebnis ist (#t
. ausschnitt
)ausschnitt
steht für eine Scheme-Form mit den Daten des Ausschnitts. #t
bedeutet, dass das zugeschnittene Bild im Zielverzeichnis gespeichert wird. ausschnitt
wird in eine zusätzliche .scm
-Datei geschrieben.
Die Prozedur script-fu-de-herbaer-select-dir
ist in der Gimp-Prozedurdatenbank registriert. Ihr wird der Menüpunkt Filter → Verzeichnis → Ausschnitt auswählen zugeordnet.
Zu diesem Skript select-dir.scm
ist das weitere Skript process-dir.scm
(Quelle) erforderlich.