Hur man automatiserar Photoshop med Photoshop-skript

Hur man automatiserar Photoshop med Photoshop-skript / Programmering

Photoshop är ett underbart verktyg för att redigera bilder - och det är ingen hemlighet att vi är stora fans av det här. Vi har tidigare täckt hur man designar en enkel logotyp. Hur man utformar en enkel logotyp i Photoshop. Hur man designar en enkel logotyp i Photoshop Photoshop kan göra mycket mer än bara redigera foton. Det är mer än kapabelt för enkelt designarbete. Här visar vi dig hur man gör en enkel geometrisk logotyp. Läs mer och hur man fixar överexponerade bilder, så automatisering är nästa logiska steg när du har behärskat det grundläggande.

Du kanske har hört talas om Photoshop-åtgärder. Dessa är ett enkelt sätt för dig att automatisera uppgifter. Idag visar jag dig hur du använder Photoshop-skript. Photoshop-skript är lite kraftfullare än åtgärder och ger dig möjligheten att ändra skriptets beteende vid körning - något som inte kan göra!

Oroa dig inte om det här låter komplicerat: Skript skrivs i JavaScript Vad är JavaScript, och kan Internet existera utan det? Vad är JavaScript, och kan Internet existera utan det? JavaScript är ett av de saker som många tar för givet. Alla använder det. Läs mer, ett enkelt men kraftfullt språk.

Om du är fan av GIMP eller inte vill spendera pengarna på Photoshop, kolla in vår guide för att automatisera GIMP med skript Spara din tid och försök genom att automatisera GIMP med skript Spara själv tid och ansträngning 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! Läs mer .

Ditt första skript: Ändra storlek på bilder

När du skriver skript kan du använda ExtendScript Toolkit. Du behöver inte använda det här, du kan använda någon textredigerare du gillar (jag gillar Sublime Text), men det finns många fördelar med att använda den här verktyget istället. Den största fördelen är att du kan ställa in brytpunkter, vilket gör det väldigt enkelt att felsöka din kod och identifiera eventuella fel.

ExtendScript Toolkit ingår i din Creative Cloud-prenumeration, så fortsätt och installera den från din Creative Cloud App eller webbplatsen ovan.

Öppna verktygslådan en gång installerad. Du kommer att presenteras med det här ganska daterade snygga gränssnittet:

Här är koden för ditt första skript - kopiera och klistra in det här i huvudkodfönstret till vänster:

current_document = app.activeDocument; new_width = 670; current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBIC);

Låt oss bryta ner vad den här koden gör. De current_document variabel lagrar det aktiva dokumentet objekt från Photoshop. Detta är tillgängligt med hjälp av app.activeDocument syntax. Om du inte har Photoshop köra med ett dokument öppet, kommer den här koden att kasta ett undantag. Undantag är sätt för kod att stoppa körning - det här skriptet kan inte fortsätta om det inte finns något dokument!

De new_width variabel lagrar bredden du vill att ditt nya dokument ska vara.

Slutligen, den resizeImage Metoden ändrar bilden. Detta måste nås via current_document variabel. Du måste passera i din nya bredd (konverterad till pixlar genom Enhetsvärde metod), och ResampleMethod av Bikubisk.

Det finns fem huvudsakliga resampling metoder tillgängliga för dig. Dessa varierar i form av hastighet och kvalitet, så lek med dem (även om Bicubic är bra för de flesta ändamål). Här är en snabb sammanfattning av skillnaderna:

  1. Närmaste granne: Mycket snabb men grundläggande.
  2. bilinjär: Bättre än närmaste granne, men långsammare och inte lika bra som Bicubic.
  3. bicubic: Mycket bra resultat, men beräkningsmässigt dyrt.
  4. Bikubisk Mjukare: En förbättrad version av Bicubic för uppskalning (gör större).
  5. Bikubisk skarpare: En förbättrad version av Bicubic utformad för downsampling (gör mindre).

Kom ihåg att kapitalisera dessa när du använder dem i din kod.

Nu när du förstår koden är det dags att springa! Se till att du har Photoshop öppet, tillsammans med ett dokument.

Överst i ExtendScript Toolkit, ändra mål rullgardinsmenyn (övre vänstra) från ExtendScript Toolkit CC till Adobe Photoshop CC 2017 (eller vad din version av Photoshop är). Om du skriver skript för andra Adobe-appar kan du ändra det här till de istället.

Tryck nu på Spela knappen till höger om måldisplayen, på Överst till höger av din kod.

Om allt gick rätt, är dokumentet nu ändrat (glöm inte att spara det). De JavaScript-konsolen längst upp till höger på din verktygslåda visas resultatet av ditt skript. Eftersom det inte finns någon produktion så kommer det att säga Resultat: Odefinierat.

Om det finns ett problem (som ett undantag kastat), kommer din kod inte att köras, och du får en orange bar ungefär Problemets placering.

Det här kan vara ett enkelt typsnitt, så efter att ha stoppat manuset (Övre högra kontroller > Stoppknapp), dubbelkolla:

  • Din kod är korrekt och har inga tecken.
  • Photoshop körs.
  • Du har ett dokument öppet i Photoshop.

Löpande skript

Nu körs din kod korrekt, det är dags att lägga till det i Photoshop.

Inuti din verktygslåda, gå till Fil > Spara, och spara ditt skript på en lämplig plats med ett lämpligt namn. Som standard blir detta Adobe Scripts mapp. Lägg märke till hur skript måste sluta i .JSX formatera.

Inne i Photoshop, gå till Fil > skript > Script Events Manager. Bock Aktivera händelser för att köra skript / åtgärder.

När det är aktiverat tillåter detta gränssnitt dig att konfigurera befintliga skript för att köra när vissa åtgärder inträffar. Det finns flera viktiga områden:

  1. Photoshop-händelse: Det här är när manuset körs. Du kan välja mellan olika alternativ, till exempel vid utskrift, när du öppnar ett nytt dokument och många fler.
  2. Manus: Detta är skriptet som ska köras. Det finns några grundläggande inbyggda, men du kan också tilldela en av dina egna skript här.
  3. Verkan: Om du inte använder ett skript kan du välja en grundläggande åtgärd som ska utföras istället, till exempel spara till PDF.

Välj Manus, och välj sedan Bläddra. Välj ditt skript. Fortsätt och välj en händelse som kommer att utlösa ditt skript.

När du är klar, klicka på Lägg till och då Gjort. Den här menyn är också där du kan redigera eller ta bort eventuella skript som tidigare konfigurerats.

Om du inte vill knyta ditt skript till en åtgärd är det ännu enklare att installera. Gå till Fil > skript > Bläddra. Navigera till ditt skript och tryck sedan på öppet. Ditt skript kommer omedelbart att köras.

Om du vill se ditt skript i den här skriptmenyn måste du kopiera det till lämplig mapp. Detta finns i presets > skript mappen i din Photoshop-installation.

När du har kopierat startar du om Photoshop. När du startat om, visas ditt skript som ett menyalternativ i Fil > skript Meny.

Ändra storlek på bilder: Gör det bättre

Nu när du har en förståelse för Photoshop Scripts, är det dags att förbättra koden.

Koden fungerar väldigt bra när du ändrar bilder till 670px (eller vilken storlek du ändrade den till), men det kunde bli bättre. Lyckligtvis är JavaScript ett mycket flexibelt språk!

Låt oss ändra koden så att alla bilder som är mindre än den nya storleken inte kommer att ändras. Här är koden:

current_document = app.activeDocument; new_width = 670; om (current_document.width> new_width) current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBIC); 

Det finns bara en förändring här. En om Uttalandet är inslaget runt resize-metoden. Om den aktuella dokumentbredden (nås via current_document.width) är mindre än den nya bredden, ändra inte storlek.

Detta säkerställer att små bilder inte blir förstorade, vilket skulle minska kvaliteten.

När du börjar skriva kod i verktygslådan, ger den förslag på giltiga ändringar du kan göra, metoder för att ringa eller egenskaper som ska komma åt. Detta är mycket användbart, och du borde dra full nytta av det!

Här är en sista förändring:

current_document = app.activeDocument; // Hämta det aktiva dokumentet new_width = 670; // ny bredd som kan användas för om (current_document.width> new_width) // om dokumentet är större än ny storlek current_document.resizeImage (UnitValue (new_width, 'px'), null, null, ResampleMethod.BICUBICSHARPER);  current_document.activeLayer.autoContrast (); // Tillämpa kontrast current_doc.activeLayer.applySharpen (); // Tillämpa skärpa

Den här koden innehåller nu kommentarer, något som all kod ska ha. 10 Tips för att skriva renare och bättre kod. 10 Tips för att skriva renare och bättre kod. Skriva ren kod ser lättare ut än vad den egentligen är, men fördelarna är värda det. Så här kan du börja skriva renare kod idag. Läs mer, och som hjälper dig ut i framtiden.

Resample-metoden har ändrats till Bikubisk skarpare - Detta ger lite bättre resultat vid nedskalning av bilder.

Slutligen har kontrast och skärpa tillämpats som sista steget.

Vad kommer du att koda?

Nu borde du veta allt du behöver för att automatisera något i Photoshop! Om du kan göra det i Photoshop kan du förmodligen automatisera det. Photoshop API Vad är API-filer och hur är öppna API-filer som ändrar Internet Vad är API-filer och hur är öppna API-filer som ändrar Internet Har du någonsin undrat hur program på din dator och de webbplatser du besöker "pratar" med varandra? Läs mer ger tillgång till många funktioner, och deras dokumentation beskriver nästan alla funktioner du kan komma åt.

Naturligtvis var dagens exempel bara grundläggande, men de täcker kärninformationen - du kan implementera ett skript som är specifikt för dina krav!

Lärde du något nytt idag? Vilka är dina favoritskript? Låt oss veta i kommentarerna nedan!

Bildkredit: whiteMocca via Shutterstock.com

Utforska mer om: Adobe Photoshop, Photography, Scripting.