Spara din tid och försök genom att automatisera GIMP med skript

Automatiserande åtgärder med Python-skript i GIMP kan spara dig lite tid. Det är inte lätt att komma igång, men när du väl vet dessa grunder kommer du att vara väl på väg!

Automatiserande åtgärder med Python-skript i GIMP kan spara dig lite tid.  Det är inte lätt att komma igång, men när du väl vet dessa grunder kommer du att vara väl på väg!
Annons

Bildredigering tenderar att innebära många repetitiva processer, särskilt när du arbetar med ett stort album med bilder. Om du är villig att dabble i skript kan du använda GIMP för att automatisera några av dessa åtgärder för att spara tid och ansträngning.

Scripting with Python 10 Basic Python-exempel som hjälper dig att lära dig snabbt 10 Basic Python-exempel som hjälper dig att lära dig snabbt Denna artikel med grundläggande python-exempel är för dem som redan har någon programmeringsupplevelse och helt enkelt vill övergå till Python så fort som möjligt. Läs mer i GIMP är inte lätt, men det är väldigt givande om du är beredd att lära sig repen. Så här börjar du med ett par väldigt grundläggande skript.

Skapa ett Python-skript

Innan vi börjar börja arbeta med vårt projekt på allvar måste vi lägga grunden. Öppna först en textredigerare och kopiera och klistra in koden nedan:

#!/usr/bin/python from gimpfu import * def first_plugin(timg, tdrawable): print "Hello, world!" register( "hello_world", "Presents a Hello, World! message", "Presents a Hello, World! message", "Brad Jones", "Brad Jones", "2017", "/Image/Hello, World!", "RGB*, GRAY*", [], [], first_plugin) main() 

Här är en kort sammanfattning av vad som händer där uppe. De två första linjerna initierar skriptet och ger oss tillgång till några hjälpsamma bibliotek. Den del av koden som följer def first_plugin innehåller instruktionerna som vi ger GIMP. Informationen som följer ordregistret är allt som GIMP behöver veta om pluginprogrammet.

Det här är den information vi behöver för att ge GIMP att registrera vårt skript:

  • Namn: Namnet på kommandot (t ex hello_world )
  • Förslag: En kort beskrivning av kommandot (t.ex. Presenterar ett Hello, World! -meddelande )
  • Hjälp: Hjälpmeddelandet som ska visas (t.ex. Presenterar ett Hello, World! -meddelande )
  • Författare: den person som skapade manuset (t.ex. Brad Jones )
  • Upphovsrättsinnehavare: upphovsrättsinnehavaren (t.ex. Brad Jones )
  • Datum: det datum som skriptet skapades (t.ex. 2017 )
  • Etikett: sättet att skriptet kommer att hänvisas till i menyn (t.ex. / Bild / Hej, Värld! )
  • Parametrar: parametrar kopplade till plugin-modulen (t.ex. [] - ingen i det här fallet)
  • Resultat: Resultat från plugin-modulen (t.ex. [] - ingen i det här fallet)
  • Funktion: namnet hänvisade till åtgärden i vår kod (t.ex. first_plugin )

Slutligen måste vi ringa huvud () .

Spara ditt skript och välj Alla filer i rullgardinsmenyn Spara som typ . Var noga med att inkludera .py-tillägget i ditt filnamn.

spara skript

Sätt sedan den här filen i GIMPs plug-in-mapp, som finns i Windows på Programfiler > GIMP 2 > lib > gimp > 2.0 (eller ~ \ Bibliotek \ Programstöd \ GIMP \ 2.8 \ skript på en Mac). Du kan behöva administratörsbehörigheter Skapa ett Backup Administrator-konto i Windows 10 Skapa ett Backup Administrator-konto i Windows 10 Med ett andra administratörskonto på din dator blir det enklare att återställa ditt eget lösenord om du glömmer det. Här är ett enkelt sätt att skapa en. Läs mer för att göra det.

Initiera GIMP och öppna bildmenyn. Du borde se Hello, World! precis där längst ner.

gimp hej världen

Nu är det dags för oss att göra vårt manus lite mer användbart.

Lägger till en del funktionalitet

Nu ska vi skriva om vårt manus så att det verkligen gör något praktiskt. Öppna upp textfilen igen och kopiera och klistra in följande kod:

 #!/usr/bin/env python from gimpfu import * def test_script(customtext, font, size): img = gimp.Image(1, 1, RGB) layer = pdb.gimp_text_fontname(img, None, 0, 0, customtext, 10, True, size, PIXELS, font) img.resize(layer.width, layer.height, 0, 0) gimp.Display(img) gimp.displays_flush() register( "python_test", "TEST", "TEST", "Brad Jones", "Brad Jones", "2017", "TEST", "", [ (PF_STRING, "customtext", "Text string", 'Scripting is handy!'), (PF_FONT, "font", "Font", "Sans"), (PF_SPINNER, "size", "Font size", 100, (1, 3000, 1)), ], [], test_script, menu="/File/Create") main() 

Det här är lite mer komplicerat än vår Hello, World! script, men det delar en mycket liknande struktur. Först skapar vi en bild.

 img = gimp.Image(1, 1, RGB) 

Sedan lägger vi till text baserat på parametrar som tillhandahålls av användaren.

 layer = pdb.gimp_text_fontname(img, None, 0, 0, customtext, 10, True, size, PIXELS, font) 

Därefter ändras storleken på bilden i enlighet med textens storlek.

 img.resize(layer.width, layer.height, 0, 0) 

Slutligen berättar vi GIMP att visa bilden på skärmen.

 gimp.Display(img) gimp.displays_flush() 

Allt som finns kvar är att lägga till registreringsinformationen som GIMP behöver, med tillägg av några parameterinställningar som vi inte inkluderade tidigare.

 [ (PF_STRING, "customtext", "Text string", 'Scripting is handy!'), (PF_FONT, "font", "Font", "Sans"), (PF_SPINNER, "size", "Font size", 100, (1, 3000, 1)), ],  

Spara detta precis som vi räddade Hello, World! skript, flytta det till plugin-mappen och starta om GIMP. Gå till Arkiv > Skapa > TEST för att testa vår plugin.

test gimp-plugin

Du får se ett fönster där du kan ställa in olika parametrar.

testparametrar gimp plugin

Klicka på OK och du skapar en bild som ser något ut så här.

test bild gimp plugin

Detta visar hur du kan använda skript i GIMP för att automatisera en process. 5 Resurser för Excel-makron för att automatisera dina kalkylblad. 5 Resurser för Excel-makron för att automatisera dina kalkylblad. Söka efter Excel-makron? Här är fem webbplatser som har det du letar efter. Läs mer som består av flera olika åtgärder. Låt oss nu skriva ett skript som gör ändringar till en bild som vi redan har öppna.

Invertera ett lager

När du är bekväm med scripting med Python Prova Python i din webbläsare Med dessa gratis online interaktiva shells Prova Python i din webbläsare Med dessa gratis online interaktiva shells Oavsett om du går igenom Python-exemplen eller granskar grunderna i arrays och listor kan du testa koden direkt i din webbläsare. Här är de bästa Python tolkarna vi hittat. Läs mer i GIMP, du kan automatisera alla typer av tweaks till dina bilder. Vi ska dock börja så enkelt som möjligt genom att implementera ett manus som inverterar färgerna i det aktuella lagret.

För att komma igång, öppna en textredigerare igen och kopiera och klistra in följande skript:

 #!/usr/bin/env python from gimpfu import * def invert_current_layer(img, layer): pdb.gimp_invert(layer) register( "python_fu_invert_current_layer", "Invert layer", "Invert colors in the current layer", "Brad Jones", "Brad Jones", "2017", "/Filters/Custom/Invert current layer", "*", [], [], invert_current_layer) main() 

Detta följer av det manus som vi skapade tidigare. De första par koden lägger ner några fundament, och de sista flera raderna tar hand om registrering. Här är det viktiga avsnittet:

 def invert_current_layer(img, layer): pdb.gimp_invert(layer) 

Vi definierar vår process och berättar för GIMP vilka komponenter vi ska referera till och använder pdb.gimp_invert för att instruera programmet för att justera färgerna. Spara detta i .py-filformatet, lägg till det i plugin-mappen och öppna sedan GIMP för att kontrollera att det fungerar.

invertera aktuellt lager gimp plugin

Navigera till Filters > Anpassad > Invertera aktuellt lager .

invertera processen gimp plugin

Du borde få ett resultat som liknar det ovanstående. Naturligtvis är det redan relativt lätt att utföra en inverterad operation i GIMP, men det här är bara en utgångspunkt. Det stora med att skriva egna skript 10 Belöna hobbies som involverar programmering eller scripting 10 Belöning av hobbies som involverar programmering eller scripting Vilken typ av programmering och / eller skript kan du göra det inte involverar stora företag eller kontraktsgivna kunder? Här är flera idéer som du kan börja utforska just nu. Läs mer är att du kan skapa något som är helt skräddarsydd för dig.

Nästa steg i GIMP Scripting

När du förstår grunderna för skript i GIMP är det dags att börja experimentera. Tänk på vilken typ av processer du gör mycket och det skulle vara användbart att automatisera 7 dagliga uppgifter Du visste inte att du kunde automatisera om några minuter 7 Dagliga uppgifter du visste inte att du kunde automatisera om några minuter Det finns många saker du kan automatisera nu som sparar tid och låter dig fokusera på andra saker. Vi ger dig sju saker du kan automatisera just nu med rätt verktyg. Läs mer . Då kommer den knepiga delen: räkna ut hur man använder kod för att förverkliga dessa idéer.

Lyckligtvis kan GIMP erbjuda lite hjälp. Navigera till Hjälp> Procedurbläddrare och du kommer att få tillgång till en lista över alla procedurer du kan använda.

procedur webbläsare

Process Browser listar inte bara själva förfarandena, utan ger dig också information om vilka parametrar du behöver leverera i din kod.

Du kan bläddra igenom hela listan med procedurer eller använda sökfältet för att begränsa fältet. Lägg sedan bara in procedurens namn och parametrar i ditt skript.

parametrar

Denna information kommer att vara ovärderlig när du arbetar med dina skript. Börja med några enkla saker, och innan du vet det kommer du att göra några riktigt användbara automatiserade processer!

Behöver du hjälp scripting med GIMP? Eller har du ett tips som du vill dela med andra användare? Hur som helst, varför inte gå med i samtalet i kommentarfältet nedan?

Bildkrediter: Volkova Vera / Shutterstock

In this article