Uanset om du ved det eller ej, er der en god chance for, at du allerede har brugt ImageMagick, i hvert fald hvis du er en Linux-bruger. Det er billedprocessoren bag mange grafikrelaterede applikationer og med god grund. Med dette ene værktøj kan du udføre dusinvis af almindelige billedmanipulationer og konverteringer fra kommandolinjen eller i et script / program. ImageMagick kan konvertere, transformere, tegne, dekorere, animere og sammensatte billeder. Det kan bruges fra kommandolinjen til hurtige behov eller indbygget i en mere kompleks software suite. Denne vejledning dækker nogle af de mest "magiske" funktioner i ImageMagick og giver eksempler på, hvordan man bruger det til at løse hverdagens opgaver.

En note om konverter : Kommandoenavnet konverteres vil blive brugt flere gange i hele denne vejledning. Det er en af ​​flere kommandoer for at få adgang til ImageMagicks funktioner, ikke kun omdannelse mellem typer. At vi starter en kommando med ordet konverter, betyder ikke nødvendigvis, at vi konverterer fra et billedformat til et andet.

Får ImageMagick

Den er forudinstalleret på mange Linux-systemer, så du behøver muligvis ikke bekymre dig om installation overhovedet. En nem måde at finde ud af er at åbne en kommandolinje og skrive

 som konverterer 

Hvis det giver dig et resultat som / usr / bin / convert, så er du helt indstillet og kan fortsætte til næste afsnit. Hvis ikke, bør den være tilgængelig i din distro standardbibliotek. Debian og Ubuntu brugere kunne hente det med

 sudo apt-get install imagemagick 

Konverter grundlæggende billedtyper

ImageMagick er fantastisk til at udføre enkle billedkonverteringer. Konvertere en JPG til PNG, for eksempel, er så simpelt som:

 konverter minPicture.jpg myPicture.png 

Det er vigtigt at bemærke, at konverter kommandoen udfører sine operationer på en COPY af filen. Brug af konverter vil ikke erstatte eller overskrive dit originale billede.

Simple transformationer

Mens du konverterer dit billede, kan du tilføje valgfrie flag for at udføre grundlæggende transformationer som rotere, ændre størrelse og beskære. Som nævnt ovenfor kan vi bruge kommandoen konvertere, men det betyder ikke, at vi skal vælge en anden udgangstype.

 #Rotere et enkelt billede 90 grader konvertere -rotat 90 MyPicture.jpg MyPicture-rotated.jpg 

Globbing / Wildcards / Batch

Globbing er et almindeligt udtryk for brug af jokertegn (f.eks. "*") For at repræsentere en gruppe af filer. ImageMagick understøtter globbing fra kommandolinjen, så du kan udføre operationer på en gruppe af filer ved hjælp af jokertegn. For at konvertere alle JPG-filerne i en mappe til PNG kan du f.eks. Bruge noget som dette

 konvertere * .jpg image.png 

som ville oprette nye PNG-filer, der hedder image-0.png, image-1.png, image-2.png osv.

Opret animerede GIF'er

ImageMagicks intelligente kommandoparsering betyder, at det kan bestemme, hvad du sandsynligvis vil gøre ud fra hvilken type input du angiver. I det foregående eksempel anvendte vi konverter * .jpg image.png og det oprettede en individuel kopi af hver JPG-fil. Hvad hvis vi skulle erstatte ".png" med ".gif"? Svaret er ikke flere GIF-filer, det er en animeret GIF sammensat af JPG-filerne.

 konvertere * .jpg myanimated.gif 

Teksteffekter

Ved hjælp af ImageMagick kan du endda lave grafik fra tekst ved hjælp af kommandolinjen. I dette eksempel specificerer vi baggrundsfarve, tekstfarve, skrifttype, størrelse og den tekst, der skal gengives. I dette tilfælde specificerer jeg manuelt stien til en TTF-skrifttype.

 konvertere -background lightblue -fill gul -font /usr/share/fonts/truetype/thai/Purisa.ttf -pointsize 72 label: ImageMagick rendertext.png 

Anmærkninger / Vandmærkning

Nogle gange kan det være nødvendigt at tilføje nogle tekst eller et logo / grafik til et eksisterende billede. Til dette bruger du alternativet -append . I dette eksempel tilføjer jeg en bjælke til bunden af ​​mit billede med en note om indholdet. Hvis jeg har en fil kaldet tux.jpg, kunne jeg bruge følgende til at tilføje en note til bunden:

 konvertere tux.jpg -background Khaki label: 'Dette er Tux!' -gravity Center -append tux_annotated.jpg 

Konklusion

De eksempler, der vises her, skraber næppe overfladen af, hvad ImageMagick kan gøre. Med lidt tid og praksis, og sandsynligvis hjælp fra denne monstrøse guide, kan du gøre fantastiske ting med dette program. Du er ikke begrænset til kommandolinjen, ImageMagick giver API'er til C, C + +, Java, .NET, Python og meget mere. Hvis du har en historie om, hvad ImageMagick har gjort for dig, så lad os vide i kommentarerne!