Tjänare tipslistan

Detta tips

... handlar om hur du batchkonverterar massor med SVG-filer till PNG-filer med Automator. 

Hade ett litet problem idag som gällde att jag behövde konvertera en bunt SVG-bildfiler till PNG-bildfiler i en viss storlek. SVG är alltså ett filformat för bilder som innehåller vektorgrafik, utvecklat av World Wide Web Consortium och är Open Source. PNG är ett filformat för bilder för pixelgrafik och är mycket vanligt på webben numera.

Men eftersom det var över 30 filer i form av ikoner från Endless icons, så orkade jag inte göra det för hand.

Men jag vet inte om detta är av intresse för listan? 

Det är nämligen kanske lite överdrivet komplicerat, med ett smalt användningsområde eftersom det bara är intressant om man har just SVG-filer man vill konvertera. Vilket jag gissar man inte sitter och bråkar med så ofta? Men vill man konvertera andra filformat med Automator kan jag förklara hur man gör om någon frågar.

Men för den som är intresserad:

Ett arbetsflöde för Automator som kan batchkonvertera SVG till PNG av viss storlek

Istället för att lägga 30 minuter på att göra detta för hand med GIMP så lade jag två timmar på att lära mig hur jag får datorn att göra det åt mig. Jag har tyvärr den typen av hjärna som hellre gör så. 10 minuter med papper och penna, eller två timmar med datorn... :)

Så nedan finns ett sätt att batch-konvertera SVG genom att installera homebrew (ett program för att installera andra program), en bildredigerare man styr med terminalkommandon som kan konvertera SVG, och sedan skrev jag ett litet script. Det scriptet lade jag in i ett automator-mapp-flöde som jag kopplade till en mapp.

Nu behöver jag bara dra och släppa SVG-filer på mappen convertSVGtoPNG så konverteras dessa till PNG i vald storlek i mappen processed och originalen placeras i source. Smidigt! :)

convert

 Vill man göra exakt samma behöver man göra dessa steg:

Installera Homebrew via terminalen. Det står på denna sidan hur man gör: 

https://brew.sh/

Installera convert-svg-png via terminalen. Det står på denna sida ett kommando för hur man gör det när man har Howebrew installerat och på sidan finns även mera info om vilka kommandon man kan skicka till det.

https://webadventures.at/2012/04/29/convert-svg-png/

Skapa dessa tre mappar på skrivbordet:

  • convertSVGtoPNG
  • processed
  • source

Skapa ett nytt Mappkommando i Automator (som ligger i Programmappen).

Det skall se ut så här, de tre röda sakerna är viktiga. Scriptet i rutan finns efter bilden.

Arbetsflode

Här är scriptet som skall in i rutan.
# 256 nedan är bredden, det finns även en -h som är höjden)
# Detta är kopplat till en mapp och på skrivbordet finns både processed och source

PATH=/usr/local/bin:/bin export PATH
for f in "$@"
do
nf="${f%.svg}.png"
rsvg-convert -w 256 "$f" -o "$nf"
mv "$f" ~/Desktop/source/
mv "$nf" ~/Desktop/processed/
done


Notera att namnen på mapparna står i scriptet där.

Spara.

Sedan är det bara att testa. Dra och släpp en bild i SVG-format på mappen eller klistra in kopierade filer i mappen convertSVGtoPNG och så kommer dessa konverteras. Man alltså dra och släppa ett helt gäng.

Klart! 

Tips

Workflows sparas i din användares biblioteksmapp. Komplett sökväg är:

[Hårddisk]/Användare/[din användares mapp]/Bibliotek/Workflows/Applications/Folder actions/

Du kan även högerklicka på mappen du kopplat kommandot till och sedan välja, Inställningar för mappkommandon...

hogerklicka pa mappen med mappkommandot pa

Sedan markerar du det och väljer "Redigera arbetsflöde". Du kan tex lätt ändra storleken det skall konverteras till och spara.

select workflow to edit

Man kan även placera denna mapp i dockan, bland favoriter eller i direkt i dina Finder-fönster.

Man kan i arbetsflödet även lägga in flera saker, tex att avsluta med att öppna mappen processed och visa filerna man just fått konverterade.

Länkar:

Tipset och scriptet fick jag från denna artikel, men den terminal-grej/konverteringsprogram som används i den artikeln fungerade inte. Men scriptet (förutom en rad) förklaras i den artikeln. (Den raden som skiljer sig förklaras i denna artikel).

Creating an OS X folder action to export SVG
https://mijingo.com/blog/creating-an-os-x-folder-action-to-export-svg

 

Lycka till på internet idag!
 
/Ola Andersson
-----------------------------------------------------------------
Detta tips skickades till någon av mina mailinglistor, datum som ovan.
Det har tidigare varit publicerat på mammals.se, och/eller alltommig.nu, och nu (okt 2021) ligger det här på listor.mammals.se.

Mailat 2017-12-11, till bloggen 2018-08-09.