Hab in de letzten Tagen folgendes Problem gehabt:
Es wurden mehrere Bild erstellt, die dann als Lagen geöffnet wurden.
Lieder (ich weiß es nicht besser) hab ich alle auf einmal geladen.
Nur war die Reihenfolge gerade 'umgekehrt'.
Ein plugin was das tut kenne ich nicht und daher eben selbst basteln:
Code:
def changeOrder():
image = gimp.image_list()[0]
layers = image.layers
for i in range(1, len(layers)):
pdb.gimp_image_raise_layer_to_top(image, layers[i])
Erklärungen pro Zeile ...
0. Fauler Peter macht gleich eine wiederverwendbare Funktion: changeOrder
1. Das Bild holen (so macht man das in der Console)
2. Die Lagen benutzbar machen
3. Eine Schleife die Arbeit machen lassen, auf ALLE Lagen eins nach dem andern anwenden, bis auf die Oberste, die soll nämlich die unterste werden, daher ist der erste Parameter von range eine 1! Wieviel? Ausrechnen lassen mit len(...) len ergibt die Anzahl, in diesem Fall von den Lagen, hinter siehe was ... oben ist!
4. die von Gimp gelieferte Funktion, die Lagen nach oben befördert anrufen (sieh Hilfe in Browse!)
Nun noch anrufen: changeOrder() und Enter in die Console typen!
Einfach, nicht wahr?
Peter
ach ja, nachdem man Gimp für GIF optimiert hat stehen überall die Zeiten 100ms in den Lagen-Namen: will ich nicht!
Daher:
Code:
def changeTime(otherTime):
image = gimp.image_list()[0]
layers = image.layers
newTime = str(otherTime) + "ms"
for el in layers:
el.name = el.name.replace("100ms", newTime)
layers[0].name = layers[0].name.replace("1000","2500")
layers[-1].name = layers[0].name.replace("1000","2500")
Raetsel: ist nicht perfekt ,
Sollte auch ein Anfänger 'lesen' können