hilfe hilfe hilfe hilfe,
hi, ich stehe vor einer Aufgabe für die ich skript-fu brauche.
ich möchte aus einer größeren grafik bestimmte kleinere kacheln (32x32) ausschneiden und jeweils in eine eigene ebene auf position 0,0 ablegen, um anschließend das gesamte bild, also alle ebenen auf 32x32 zu schneiden und als animiertes gif zu exportieren.
Das ist eine nervige aufgabe, man kann dabei viele kleine fehler machen und ich möchte diese aufgabe schnell auf viele grafiken anwenden können.
Ich habe also versucht Skript-Fu mit dem Befehlsbrowser zu lernen, allerdings bereitet mir die erste funktion schon probleme:
Ich verstehe das image parameter der select-rectangle funktion nicht. wie gebe ich da die unterste ebene ein?
Also was ich brauche ist eigentlich simpel, ich bin nur zu doof:
- select rectangle in der untersten ebene an bestimmten koordinaten
- paste in einer neuen ebene an 0,0
und das ganze 15x
und dann würde ich das skript gerne speichern und wieder aufrufen können, weil ich es noch oft brauche.
welche befehle kann ich nutzen? kann mir irgendjemand weiterhelfen?
kleines anfängerproblem mit script-fu
- Gimplyworxs
- Beiträge: 3215
- Registriert: Sa 22. Aug 2020, 09:11
- Wohnort: Crailsheim, BaWü
- Deine Galerie: https://gimp-werkstatt.de/werkstatt-galerie/gimplyworxs
- Betriebssystem: Linux Mint 20.1 MATE
Re: kleines anfängerproblem mit script-fu
Hallo alex_z,
Naja, bei Script-Fu den Überblick zu verlieren oder den Zusammenhang nicht zu sehen geht schnell. Die vielen Klammern, die umgekehrte Notation ( also die Funktionen quasi von hinten lesen zu müssen ... muss man sich dran gewöhnen ...)
Muss es unbedingt Script-Fu sein?
Dann gibt es hier ein Tutorial von Clara Fall:
Tutorials von Clara Fall:
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=409
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=411
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=412
Sehr empfehlenswert finde ich auch die kleine Serie von monsoonami auf YT:
Videos von monsoonami
https://www.youtube.com/playlist?list=P ... 821B2370D4
-------------------------------
Ich würde dir Python empfehlen ( allemal, wenn du erst anfängst). Das ist so viel übersichtlicher. Für GIMP 2.10.x brauchst du Python 2 (kommt bei Windows ja mit).
schöne Tutorials dazu gibts von Jackson Bates:
https://www.youtube.com/playlist?list=P ... V08wxdnWt-
Du wirst zu Python auch so sehr viel mehr Doku finden - und Leute, die dir weiter helfen können.
Was kannst du alles verwenden, also ne Funktionsreferenz gibt's in GIMP selber.
Hilfe > Prozedurenbrowser
Bei Python besser: Filter > Python-Fu > Konsole
Dort auf Durchsuchen ... liefert alles was verwendbar ist
Funktions-Rohlinge zum Kopieren bekommst du, wenn du auf "Anwenden" klickst.
Naja, bei Script-Fu den Überblick zu verlieren oder den Zusammenhang nicht zu sehen geht schnell. Die vielen Klammern, die umgekehrte Notation ( also die Funktionen quasi von hinten lesen zu müssen ... muss man sich dran gewöhnen ...)
Muss es unbedingt Script-Fu sein?
Dann gibt es hier ein Tutorial von Clara Fall:
Tutorials von Clara Fall:
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=409
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=411
https://gimp-werkstatt-forum.de/viewtop ... f=42&t=412
Sehr empfehlenswert finde ich auch die kleine Serie von monsoonami auf YT:
Videos von monsoonami
https://www.youtube.com/playlist?list=P ... 821B2370D4
-------------------------------
Ich würde dir Python empfehlen ( allemal, wenn du erst anfängst). Das ist so viel übersichtlicher. Für GIMP 2.10.x brauchst du Python 2 (kommt bei Windows ja mit).
schöne Tutorials dazu gibts von Jackson Bates:
https://www.youtube.com/playlist?list=P ... V08wxdnWt-
Du wirst zu Python auch so sehr viel mehr Doku finden - und Leute, die dir weiter helfen können.
Was kannst du alles verwenden, also ne Funktionsreferenz gibt's in GIMP selber.
Hilfe > Prozedurenbrowser
Bei Python besser: Filter > Python-Fu > Konsole
Dort auf Durchsuchen ... liefert alles was verwendbar ist
Funktions-Rohlinge zum Kopieren bekommst du, wenn du auf "Anwenden" klickst.
Viele Grüße
Gimplyworxs
Gimplyworxs

- Gimplyworxs
- Beiträge: 3215
- Registriert: Sa 22. Aug 2020, 09:11
- Wohnort: Crailsheim, BaWü
- Deine Galerie: https://gimp-werkstatt.de/werkstatt-galerie/gimplyworxs
- Betriebssystem: Linux Mint 20.1 MATE
Re: kleines anfängerproblem mit script-fu
Wenn Python für dich ok wäre, könnte der Anfang so aussehen:
Das Ganze abspeichern als alex_z.py in deinem persönlichen plug-ins Ordner. GIMP neu starten und im Menü unter Test ist es dann zu sehen.
Unklar ist mir das mit den 15 mal ... soll er 15 mal dasselbe kopieren? oder werden die Kästchen verschoben?
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# python_fu_alex_z_kopieren
# Fuer GIMP Version 2.10.x
# Created by alex_z
# Comments directed to https://
#
# License: GPLv3
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY# without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# To view a copy of the GNU General Public License
# visit: http://www.gnu.org/licenses/gpl.html
#
#
# ------------
# | Change Log |
# ------------
# Rel 1: Initial release
from gimpfu import *
def python_fu_alex_z_kopieren(image, drawable): # FUNCTION DEFINITION
pdb.gimp_image_undo_group_start(image)
pdb.gimp_context_push()
# YOUR CODE BEGINS=======================
# width = image.width
# height = image.height
# size = min(width, height)
# - select rectangle in der untersten ebene an bestimmten koordinaten
# pdb.gimp_image_select_rectangle(image, operation, x, y, width, height)
pdb.gimp_image_select_rectangle(image, 2, 0, 0, 32, 32)
# kopieren in Zwischenablage
kopiertes_teil = pdb.gimp_edit_copy(drawable)
# - paste in einer neuen ebene an 0,0
floating_sel = pdb.gimp_edit_paste(drawable, False)
# schwebende auswahl verankern
pdb.gimp_floating_sel_to_layer(floating_sel)
# YOUR CODE ENDS ========================
pdb.gimp_context_pop()
pdb.gimp_image_undo_group_end(image)
pdb.gimp_displays_flush()
# return
register(
"python_fu_alex_z_kopieren",
'Beschreibung Tooltip',
'Beschreibung Zusatz',
'alex_z',
'alex_z',
"2022-03-30",
"Mehrmals kopieren",
"RGB*",
[
(PF_IMAGE, "image", "takes current image", None),
(PF_DRAWABLE, "drawable", "Input layer", None)
],
[],
python_fu_alex_z_kopieren, menu="<Image>/Test")
main()
Unklar ist mir das mit den 15 mal ... soll er 15 mal dasselbe kopieren? oder werden die Kästchen verschoben?
Viele Grüße
Gimplyworxs
Gimplyworxs
