Wie lade ich ein Bild in gimp vom Terminal und verlasse es danach?

432
masec

Ich möchte ein Bild nicht interaktiv in gimp von der Befehlszeile aus laden, ohne ein Fenster zu öffnen und danach in Linux zu beenden.

Ich habe gimp basic batch gelesen, bin aber immer noch verwirrend. Ich freue mich über jede Hilfe.

2
Bitte erweitern Sie Ihren ersten Absatz in ein paar Sätzen. Wenn Sie "nicht interaktiv ... über die Befehlszeile" sagen, meinen Sie einen Befehl (den Sie von der Shell aus ausführen können), der keinen Dialog hat? Oder ist es in Ordnung, wenn es einen genau definierten (vorhersagbaren) Dialog gibt, der mit einem Skript erstellt werden kann? Was meinst du mit "ohne Fenster zu öffnen"? Was meinst du mit "und danach beenden"? Bitte antworten Sie nicht in Kommentaren. Bearbeiten Sie Ihre Frage, um sie klarer und vollständiger zu machen. Scott vor 5 Jahren 1
Siehe https://stackoverflow.com/questions/44430081/how-to-run-python-scripts-using-gimpfu-from-windows-command-line/44435560#44435560 (95% davon auch für Linux) xenoid vor 5 Jahren 0

1 Antwort auf die Frage

0
baelx

Wenn Sie die Bildverarbeitung mit Gimps CLI im sogenannten Stapelmodus automatisieren möchten, gibt es drei Aspekte:

1. Öffnen Sie Gimp ohne Schnittstelle

Dies kann durch Einbinden der -iOption in jeden Gimp-Befehl (einschließlich Stapelmodus) erreicht werden.

2. Ändern Sie Ihre Bilddateien und speichern Sie sie

Dies wird in Form einer "Prozedur" durchgeführt, wie es Gimp sagt. Es gibt ein bestimmtes Verfahren für fast jede mögliche Aktion, die Sie für ein Bild ausführen können, von einem Sepia-Filter von% 50 über das Speichern als Bitmap-Bild bis hin zum Schließen von Gimp. Für jede Prozedur, die Sie ausführen möchten, müssen Sie eine -bOption in den Befehl aufnehmen. Folgen Sie dann der jeweiligen Prozedur, die Sie ausführen möchten. Eine vollständige Liste aller für Sie verfügbaren Verfahren finden Sie im Prozedurbrowser. Sie können Gimp mit der grafischen Standardoberfläche öffnen, auf den HelpMenüpunkt klicken und dann auf klicken Procedure Browser. Sie können diese Liste nach dem durchsuchen, was Sie tun möchten.

3. Beenden Sie Gimp automatisch

Dazu führen Sie einfach die Quit-Prozedur aus: (gimp-quit 0)


Überblick

Zu Beginn können Sie mit einer vereinfachten Version all dieser Schritte herumspielen. Zuerst cdzu dem Verzeichnis, das eine zu ändernde Image-Datei enthält, und dann den folgenden Befehl ausführen:

gimp <image-file.jpg> -i -b '(gimp-quit 0)' 

Stellen Sie sicher, dass Sie "image-file.jpg" durch eine tatsächliche Image-Datei in diesem Verzeichnis ersetzen. Wenn es funktioniert hat, sehen Sie vielleicht nur einen kurzen Text in Ihrer Befehlszeile und dann haben Sie nach etwa einer Sekunde die Shell-Kontrolle wieder. Zusammenfassend dieser Befehl:

  1. Öffnet ein Bild, wie in der Bilddatei angegeben
  2. Öffnet es im "no-interface" -Modus mit der -iOption
  3. Anschließend wird die gimp-quitProzedur ausgeführt.

Um etwas komplizierter zu werden und mehrere Bilder gleichzeitig zu verarbeiten, enthält die von Ihnen erwähnte Dokumentation Gimp-spezifische Skripts (in "Script-Fu" geschrieben), die Sie speichern können, um die Automatisierung zu erleichtern.

Diese Skripte sehen vielleicht etwas abschreckend aus, aber denken Sie daran, es ist nur eine Kombination aus:

  • Die vorgenannten "Verfahren"
  • Die Skript-Fu-Skriptsprache (die selbst einfach und intuitiv zu erlernen ist). Weitere Informationen zum Scripting in Gimp finden Sie hier

Sie müssen sich erst einmal mit diesen vertraut machen, um die von Gimp bereitgestellten Skripts so zu modifizieren, dass sie die gewünschte Automatisierung erreichen. Wenn Sie sich verwirrt fühlen, beginnen Sie mit kleinen Tests wie dem oben beschriebenen, und schließlich werden Sie mit dem Punkt, an dem Sie einen Stapelprozess durchführen können, komfortabler.

In Gimps Anleitung erfahren Sie mehr über Script-Fu .