GIMP-Forum 3.0

GIMP-Forum 3.0 (http://www.gimpforum.de/index.php)
-   Technische Fragen (http://www.gimpforum.de/forumdisplay.php?f=14)
-   -   Kleines Test Skript will nicht im Menue erscheinen. (http://www.gimpforum.de/showthread.php?t=23649)

Gutschy 08.11.2017 23:55

Kleines Test Skript will nicht im Menue erscheinen.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo Leute,

versuche ein kleines Test Skript mit Python Fu einzu binden. Will einfach nicht und ich begreife nicht warum.
Code:

#! /usr/bin/env python
# -*- coding: utf-8 -*-

from gimpfu import *
import os, time

# Variablen in Gimp sichtbar mache
def gprint(text):                     
    pdb.gimp_message(text)
    return

def py_test_speichern(image, drawable, kartenname, ordner, dateiname, inhalt_datei):
         
    file_name = ordner + os.sep + kartenname
    pdb.file_jpeg_save(new_card,new_card.active_layer,karten_name, karten_name, 0.88, 0, 1,1,"Titel:"+kartenname,0,1,0,0)
       
    file_name_html = ordner + os.sep + dateiname
       
    file_object_html = open(file_name_html, "w")
    file_object_html.write(inhalt_datei)
    file_object_html.close()
       
                   

               
   
   
register(
    "Speicher Test",
    "Speicher Test",
    "Test Speichern",
    "gutschy",
    "test-company.de",
    "2017",
    "<Image>/MyScripts/Speicher_Test",
    "*",
    [

    (PF_STRING, "kartenname", "Kartenname:", ""),
    (PF_DIRNAME, "ordner", "Verzeichnis:", "C:\Users\gutschy\Desktop\project17"),
    (PF_STRING, "dateiname", "Dateiname:", ""),
    (PF_STRING, "inhalt_datei", "Datei Inhalt:", "")
               
    ],
    [],
    py_test_speichern,
    )
   
main()

Im Anhang noch mal die Datei.

Schon mal Danke fuer eure Hilfe.

Gruss,

gutschy

Asmodis 09.11.2017 00:32

Hi,

wenn du ein Script debuggen möchtest, ist es immer sinnvoll, gimp mit dem Parameter "-c" zu starten. Dann bekommst du nämlich alle Fehlermeldungen beim Laden in einem Konsolenfenster angezeigt.

So lässt sich dann auch folgendes feststellen:

Code:

Traceback (most recent call last):
  File "C:\Users\Simon\.gimp-2.8\plug-ins\speicher_test.py", line 46, in <module>
    py_test_speichern,
  File "F:\Programme\Grafik\GIMP 2\32\lib\gimp\2.0\python\gimpfu.py", line 224, in register
    raise error, "procedure name contains illegal characters"
gimpfu.error: procedure name contains illegal characters

Mit dieser Information kannst du dir die Zeile 46 in deinem Script dann nochmal genau ansehen und wirst zunächst das überflüssige Komma finden.

Wenn du dir dann die Definition von Register in der gimpfu.py ansiehst, wirst du mit Hilfe der ausgegebenen Fehlermeldung außerdem feststellen, dass du für proc_name einen ungültigen string übergeben hast. Der Missetäter ist hier das Leerzeichen. D.h. du musst im ersten Parameter der register-Funktion auch noch das Leerzeichen entfernen, d.h. statt
Code:

Speicher Test
kannst du z.B.
Code:

python-fu-speicher-test
schreiben. Wenn das entsprechend angepasst ist, funktioniert das script nun zumindest bei mir :)

Gutschy 10.11.2017 00:48

Asmodis, vielen Dank fuer deine Hilfe. Eines meiner grossen Probleme ist, das ich einfach zu selten mich mit Gimp und dem Programmieren beschaeftige.

Ich habs dann dank dir hinbekommen.:)


Alle Zeitangaben in WEZ +2. Es ist jetzt 03:09 Uhr.

Powered by vBulletin® Version 3.8.2 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.