PDA

Vollständige Version anzeigen : Mehrere Images einfügen


enixser
07.01.2007, 18:46
Hallo zusammen,

ich fange gerade an, erste Versuche mit Gimp-Skripten zu machen. Dabei bin ich auf das erste Problem gestossen, dass ich nicht mit meinen Suchen im Internet lösen konnte.

Folgendes Problem:
Ich möchte ein neuen Image erstellen, den Hintergrund mit einer Hintergrundfarbe füllen und dann drei kleine Images, die als JPEG-Datei vorliegen, über diesen Hintergrund legen.

Meine Idee zur Vorgehensweise:
1. mit gimp-image-new eues Image erzeugen
2. mit gimp-layer-new neuen Laber erzeugen
3. mit gimp-image-add-layer den neuen Layer zum neuen Image hinzufügen
4. mit gimp-drawable-fill den neuen Layer mit Hintergrundfarbe füllen

bis hierher funktioniert das auch sehr schön - so wie erwartet :)

Zum einfügen der drei Images habe ich mir eine kleine Funktion geschrieben, die ich nacheinander für die drei Images aufrufe. Hier die Funktion:

(define (create-image theImage theLayer filename imgSize xpos ypos)
(let*
(
(file (car (gimp-file-load 1 filename filename)))
(image (car (gimp-image-get-active-drawable file)))
(layer (car (gimp-layer-new theImage imgSize imgSize 1 "" 100.0 0)))
)

(gimp-image-add-layer theImage layer -1)
(gimp-image-scale file imgSize imgSize)
(gimp-colorize image 240 50 60)
(gimp-selection-all file)
(gimp-edit-copy image)
(gimp-edit-paste layer 0)
(gimp-layer-set-offsets layer xpos ypos)
)
)

Leider funktioniert die Funktion nicht so wie erwartet. Es erscheint nur das erste der drei Images, auch an der richtigen/erwarten Position. Das zweite und dritte Image wird nicht angezeigt.

Nun meine zwei Fragen:
1. Was mache ich in meiner Funktion falsch?
2. Ist das überhaupt der richtige Weg, die oben beschriebene Aufgabe zu lösen?

Vielen Dank für alle Hinweise,
Ralf