Vollständige Version anzeigen : Automatisieren: Auswahl-Ausschneiden-Zuschneiden-Skalieren-Kopieren
Hallo zusammen. Ich bin ganz neuer Gimp-User und habe ein großes Projekt vor. Ich möchte mir ein grosses Bild aus ganz vielen kleinen Photoausschnitten zusammensetzen. Dafür habe ich mir jetzt erstmal das Grundbild samt magnetischem Raster gemacht, in dass ich die ganzen kleinen photos (49x49 mm - 300/300 PPI) reinfüge un positioniere. Mein Arbeitsschritt ist immer genau der gleiche: Ich öffe ein gewisses Bild 1. dann mache ich eine quadratische Auswahl 2. dann klicke ich -Auf Auswahl zuschneiden 3. dann klicke ich -Bild Skalieren -------------------in dem Menü muss ich dann immer auf 49,02, 49,02 stellen und manchmal auch die PPI nochmal 4. dann klicke ich auf-Ausschneiden und füge dass dann im grossen Bild ein Gibt es denn die Möglichkeit die Schritte nach der Auswahl, sprich 2-4 irgendwie mit nem Macro oder so zu automatisieren? Wäre super und würde mir unheimlich viel Arbeit sparen :) Bind üfr jeden Tip dankbar, frohe Ostern, Knys
Für sowas gibts es Skripte. Ein Tutorial findest du hier (http://wiki.gimpforum.de/wiki/Skript-Fu).
Es gibt in Gimp die Guillotine!
Man zieht die Hilfslinien von oben nach unten und von links nach rechts om ein 'Raster' von Rechtecken zu bekommen!
Dann gehe zu Bild -> Transformation-> Guillotine
Ein Bild wird in 'viele' kleine zerschnitten
Vielleicht hilfts?
@Spell
Ok, dann werde ich mich wohl mal daran machen müssen, dankeschön.
@PKHG
Mit der Guillotine wäre der Arbeitschritt grade flaschrum, ich will ja ein großes Bild aus vielen kleinen zusammensetzen, die ich aus verschiedenen Photos rausschneide.
Bah, da hab ich mal wieder schlecht gelesen.
Als 'Anfänger' da ein Script schreiben ist nicht so einfach ....
Du hast also n * m (rechteckige) Bilder, alle gleich groß?
Und wie müssten die geordnet werden?
Sind die nummeriert 1.jpg 2.jpg.
Weißt du die Größe des Ergebnisses 'vorher'?
Ein script um mehrere Bilder laden zu lassen hab ich nämlich (schon) ... und die dann an der richtigen Stelle einkleben sollte auch nicht allzu schwer sein ...
Ne, die Bilder habe ich noch nicht, also zumindest noch nicht die Auswahl aus den Bildern.
Ich öffne nach belieben die Bilder die alle auf meiner Festplatte sind, und wenn ich ein passendes finde lade ich dass ebenfalls in Gimp. Das Endbild (in das ich also all die kleinen quadratischen Bilder einfüge ((alle 49x49mm)) ) hab ich schon geöffnet währenddessen.
Wenn ich dann also ein passendes finde vollziehe ich immer die gleichen (obigen) drei Schritte. Und diese drei Schritte hätte ich gerne als Skript, weil ich sie wie gesagt bei jedem Bild vollziehe.
Ein Anfang?
Zum probieren:
1. Lade dein grosses Bild
2. Lade ein anderes Bild und benutze das Rechtecktool um etwas auszuschneiden
2a (vielleicht das Rechtecktool doppelt klicken und dafür sorgen, dass du nur quadratische auswählen kannst (wegen 49 x 49 )!! Fixed aspect ratio!
3. Öffne die Script Fu Konsole (über Menu Scripts)
4 Kopiere das ganze Script (hier unten!) und klebe es (als ganzes) unten in die Eingabezeile der Konsole (Return!) dann muss darüber das Script zusehen sein und ganz unten cutAndScale,,,, das zeigt dir, dass eine neue Funktion erstellt ist
5 Imagenummer ablesen von dem Bild in dem das Quadrat ausgewählt wurde, steht in der obersten Zeile des Bildes (z.B meinbild.png-4.0 und dann wäre 4 die Zahl die du benutzen müsstest)
6 Tipp in die Eingabezeile der Konsole: (cutAndScale 4) (4 natürlich durch DEINE Zahl ersetzen!)
Resultat, du siehst den Ausschnitt als ausgeschnittenes und skaliertes Bild und außerdem kannst du im großen Bild mit <Strg>c das 49.02 x 49.02 skalierte Bild kopieren und die richtige Stelle schieben und verankern!
file:///C:/Users/Peter/AppData/Local/Temp/moz-screenshot.jpg(define (cutAndScale image)
(let* ((selection (cdr (gimp-selection-bounds image)))
(x1 (car selection))
(y1 (cadr selection))
(x2 (caddr selection))
(y2 (cadddr selection))
(width (- x2 x1))
(height (- y2 y1))
(xoffset x1)
(yoffset y1))
(gimp-image-crop image width height xoffset yoffset)
(gimp-image-scale image 49.02 49.02)
(gimp-edit-copy-visible image)))
Wow, zunächst mal vielen Dank das Du Dich hier so einsetzt!! Werde es sobald wie möglich probieren und Bericht erstatten.
Frohe Ostern, Knys
> file:///C:/DSC00075.JPG(define (cutAndScale image)
(let* ((selection (cdr (gimp-selection-bounds image)))
(x1 (car selection))
(y1 (cadr selection))
(x2 (caddr selection))
(y2 (cadddr selection))
(width (- x2 x1))
(height (- y2 y1))
(xoffset x1)
(yoffset y1))
(gimp-image-crop image width height xoffset yoffset)
(gimp-image-scale image 49.02 49.02)
(gimp-edit-copy-visible image)))
Error: eval: unbound variable: file:///C:/DSC00075.JPG
Das kommt dabei raus. Aber wenn ich das richtig verstehe müsste dann bei jeder Anwendung auch der Pfad des Bildes geändert werden, order?
Gäbe es denn auch eine Möglichkeit, dem Skript einfach zu sagen:
"Führe dies bei dem momentan geöffneten Bild aus" ?
> file:///C:/DSC00075.JPG<<<<<<<DIES darf nicht da sein!!!
(define (cutAndScale image)
(let* ((selection (cdr (gimp-selection-bounds image)))
(x1 (car selection))
(y1 (cadr selection))
(x2 (caddr selection))
(y2 (cadddr selection))
(width (- x2 x1))
(height (- y2 y1))
(xoffset x1)
(yoffset y1))
(gimp-image-crop image width height xoffset yoffset)
(gimp-image-scale image 49.02 49.02)
(gimp-edit-copy-visible image)))
Error: eval: unbound variable: file:///C:/DSC00075.JPG
Das kommt dabei raus. Aber wenn ich das richtig verstehe müsste dann bei jeder Anwendung auch der Pfad des Bildes geändert werden, order?
Gäbe es denn auch eine Möglichkeit, dem Skript einfach zu sagen:
"Führe dies bei dem momentan geöffneten Bild aus" ?
Siehe oben <<<< Die Ursache der Fehlermeldung.
Ab (define ...) bis zu image))) muss in die Eingabezeile kommen.
Und dann ist de Zahl im Gimp Bild ganz oben was man benutzen kann bzw. muss!
> cutAndScale 3
#<CLOSURE>3
Habe jetzt dass Skript erfolgreich erstell, aber es entfalltet keine Wirkung. Wenn ich "CutAndScale 3" eingebe kommt nur obiger Code, das Bild bleibt wie es ist.
> cutAndScale 3
#<CLOSURE>3
Habe jetzt dass Skript erfolgreich erstell, aber es entfalltet keine Wirkung. Wenn ich "CutAndScale 3" eingebe kommt nur obiger Code, das Bild bleibt wie es ist.
Genau nachmachen!
(cutAndScale 3)
muss in die Eingabezeile!
Wow, klapp hervorragend bis auf die Kleinigkeit das es 49x49 Pixel sind und nicht mm, aber das werde ich wohl irgendwie hinbekommen. Vielen vielen Dank für Deine Hilfe!
OK, fein,
49,2 mm = 139 pixel (im Script anpassen) ;-)
JanKardel
12.04.2009, 19:50
OK, fein,
49,2 mm = 139 pixel (im Script anpassen) ;-)
Je nach Auflösung. Bei 72 Pixel/in mag das stimmen, aber wenn er es ausdrucken will und z.B. 300 Pixel/in einstellt sind das 579 Pixel.
Je nach Auflösung. Bei 72 Pixel/in mag das stimmen, aber wenn er es ausdrucken will und z.B. 300 Pixel/in einstellt sind das 579 Pixel.
Das mit der Auflösung habe ich im Script-Fu Funktion nicht finden können ..
aber muss das original dann nicht auch irgendwie mit den ppi stimmen?
Das ist ein Gebiet auf dem ich noch blutiger Anfänger bin :|
vBulletin® v3.8.2, Copyright ©2000-2013, Jelsoft Enterprises Ltd.