Skip to main content

Hvordan raskt endre størrelse, konvertering og modifisering av bilder fra Linux-terminalen

Hvordan raskt endre størrelse, konvertering og modifisering av bilder fra Linux-terminalen

Geoffrey Carr

ImageMagick er en serie med kommandolinjeverktøy for å endre og arbeide med bilder. ImageMagick kan raskt utføre operasjoner på et bilde fra en terminal, utføre batchbehandling av mange bilder, eller bli integrert i et bash script.

ImageMagick kan utføre et bredt spekter av operasjoner. Denne veiledningen vil introdusere deg til ImageMagicks syntaks og grunnleggende operasjoner, og vise deg hvordan du kombinerer operasjoner og utfører batchbehandling av mange bilder.

Installasjon

ImageMagick er ikke inkludert i standardinstallasjonene av Ubuntu og mange andre Linux-distribusjoner. For å installere den på Ubuntu, bruk følgende kommando:

sudo apt-get install imagemagick

Konvertere mellom formater

Konverter kommandoen tar et bilde, utfører handlinger på det, og lagrer bildet med filnavnet du angir. En av de mest grunnleggende tingene du kan gjøre med det, er å konvertere bilder mellom formater. Følgende kommando tar en PNG-fil med navnet "howtogeek.png" i gjeldende katalog og lager et JPEG-bilde fra det:

convert howtogeek.png howtogeek.jpg

Du kan også angi et komprimeringsnivå for JPEG-bilder:

convert howtogeek.png -quality 95 howtogeek.jpg

Nummeret må være mellom 1 og 100. ImageMagick bruker kvalitetsnivået til inngangsbilledet, hvis det er mulig. Hvis ikke, er ImageMagick til 92.

Endre størrelse på bilder

Konverter kommandoen kan også raskt endre størrelsen på et bilde. Følgende kommando spør ImageMagick for å endre størrelse på et bilde til 200 piksler i bredde og 100 piksler i høyde:

convert example.png -resize 200x100 example.png

Vi har brukt det samme filnavnet her, så ImageMagick vil overskrive den opprinnelige filen.

ImageMagick vil forsøke å bevare aspektforholdet hvis du bruker denne kommandoen. Det vil endre bildet slik at det passer innenfor et område på 200 × 100, men bildet kan ikke være nøyaktig 200 × 100. Hvis du vil tvinge bildet til å bli en bestemt størrelse - selv om det ødelegger aspektforholdet - legger du til et utropstegn på dimensjonene:

convert example.png -resize 200x100! example.png

Du kan også spesifisere en bestemt bredde eller høyde, og ImageMagick vil endre størrelsen på bildet til den bredden eller høyden mens du beholder aspektforholdet. Følgende kommando vil endre størrelsen på et bilde til en bredde på 200:

convert example.png -resize 200 example.png

Følgende kommando vil endre størrelsen på et bilde til en høyde på 100:

convert example.png -resize x100 example.png

Roterer et bilde

ImageMagick kan raskt rotere et bilde. Følgende kommando tar et bilde kalt howtogeek.jpg, roterer det med 90 grader og lagrer det roterte bildet som howtogeek-rotated.jpg:

convert howtogeek.jpg -rotate 90 howtogeek-rotated.jpg

Hvis du angav det samme filnavnet, ville ImageMagick lagre det roterte bildet over den opprinnelige bildefilen.

Bruk av effekter

ImageMagick kan bruke en rekke effekter på et bilde. For eksempel bruker følgende kommando kull-effekten til et bilde:

convert howtogeek.jpg -charcoal 2 howtogeek-charcoal.jpg

Kullkommandoen bruker en kunstnerisk "trekull" stil effekt til et bilde - 2 i kommandoen lar deg kontrollere effektens styrke.

Følgende kommando bruker Implode-effekten med en styrke på 1:

convert howtogeek.jpg -implode 1 howtogeek-imploded.jpg

Imploder-effekten gjør at det ser ut som om det er et svart hull i midten av bildet.

Kombinere Operasjoner

Alle disse operasjonene kan kombineres. Med en enkelt kommando kan du endre størrelsen på et bilde, rotere det, bruke en effekt og konvertere det til et annet format:

convert howtogeek.png -resize 400x400 -rotate 180 -charcoal 4 -quality 95 howtogeek.jpg

Dette er bare starten på det du kan gjøre med ImageMagick. Det er mange flere operasjoner du kan kombinere.

Batchbehandling

Du kan dra nytte av Bash for raskt å gjøre batchbehandling av mange bilder. Følgende kommando vil for eksempel ta alle PNG-filer i gjeldende katalog, rotere dem, og lagre en ny kopi av hver med "-rotated" lagt til begynnelsen av hvert filnavn.

for file in *.png; do convert $file -rotate 90 rotated-$file; done

Du kan enkelt endre denne kommandoen for å utføre andre handlinger. Du kan også integrere batchbehandlings kommandoer i et Bash skal skript for å automatisere bildebehandlingsoperasjoner.


Enhver artikkel på ImageMagick vil utelate mye av hva du kan gjøre med det - det er bare for mange alternativer og kommandoer. Hvis du er interessert i å gjøre mer med ImageMagick, sjekk ut den offisielle dokumentasjonen på ImageMagick-nettstedet for en mye mer grundig titt på ImageMagick.

Link
Plus
Send
Send
Pin