convert

Aus Mikiwiki
Version vom 11. Januar 2009, 15:05 Uhr von Michi (Diskussion | Beiträge) (New page: Der Shell-Befehl <b>convert</b> aus dem Paket Imagemagick dient zum Umwandeln zwischen Bildformaten sowie zur Grössenveränderung von Bildern, blur, crop, despeckle, dither, draw ...)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

Der Shell-Befehl convert aus dem Paket Imagemagick dient zum Umwandeln zwischen Bildformaten sowie zur Grössenveränderung von Bildern, blur, crop, despeckle, dither, draw on, flip, join, re-sample, und vieles mehr.

Inhaltsverzeichnis

Optionen

Option Beschreibung
-draw Dieser Parameter nimmt innerhalb von Anführungszeichen gleich mehrere weitere Argumente entgegen, wie etwa die Position des Wasserzeichens (z. B. "gravity south") oder die Farbe der Beschriftung ("z. B. "fill black text", "fill white text").
-font Schriftart zum Beschriften von Bildern. Als zusätzlicher Parameter wird entweder der Schriftname (z. B. "-font helvetica" oder "-font arial") oder der volle Pfad zu einer installierten Schrift angegeben (z. B. "-font /usr/share/fonts/truetype/msttcoreconts/Comic_Sans_MS.ttf").
-pointsize Schriftgrösse in Punkt (z. B. "-pointsize 10").
+polaroid Das Bild wird mit einem weissen Rahemn versehen und um einen zufälligen Wert gekippt, sieht danach also aus wie ein Polaroidfoto. Das Ausgabeformat muss Transparenz darstellen können (z. B. GIF oder PNG). (ab Imagemagick 6.3.2)
-polaroid Das Bild wird mit einem weissen Rahemn versehen und um den angegebenen Gradwert gekippt (z. B. "-polaroid 75"), sieht danach also aus wie ein Polaroidfoto. Das Ausgabeformat muss Transparenz darstellen können (z. B. GIF oder PNG). (ab Imagemagick 6.3.2)
-resize Verkleinerung des Bildes auf ein Rechteck, das genau in die Zielgrösse hineinpasst, ohne zu verzerren. "-resize 800x800" dient also als Maximalangabe und sorgt dafür, dass ein 1600x1200 Pixel grosses Bild auf 800x600 Pixel verkleinert wird; ein 1200x1600 Pixel grosses Bild wird auf 600x800 Pixel verkleinert.

Verwendung

Umwandlung der Bilddatei "infile.bmp" ins JPEG-Format als Datei "outfile.jpg" mit Kompressionsgrad 3 ("-quality 3").

$ convert infile.bmp -quality 3 outfile.jpg

Veränderung der Grösse der Bilddatei "infile.png", die Ausgabedatei wird nach "outfile.png" geschrieben.

$ convert infile.png -resize 50% outfile.png

Verringerung der Anzahl Farben in Datei "infile.jpg" auf 256 und Umwandlung in die Ausgabedatei "outfile.gif" geschrieben.

$ convert infile.jpg -colors 256 outfile.gif

Veränderung der Datei "infile.jpg" in eine Art "Ölgemälde" in der Ausgabedatei "outfile.jpg".

$ convert infile.jpg -paint 10 outfile.jpg

Umwandeln aller JPEG-Dateien im aktuellen Verzeichnis auf eine einheitliche Grösse. Die Grössenangabe "1024x1024" sorgt dafür, dass hoch- und querformatige Bilder am Ende gleich gross sind; die Bildseitenverhältnisse bleiben dabei erhalten und beim Skalieren wird die längste Seite auf 1024 gesetzt.

$ for pic in $(ls -1 *.jpg); do convert -verbose $pic -scale 1024x1024 $pic; done

Umwandeln aller JPG-Dateien im aktuellen Verzeichnis auf die Grösse 800x600 und Speichern im Unterverzeichnis "small_pics". Die Originale bleiben dabei erhalten.

$ test -d small_pics || mkdir small_pics && for i in *.jpg; do convert -resize 800x800 "$i" "small_pics/$i"; done

Umwandeln aller JPEG-Dateien im aktuellen Verzeichnis ins Format TIFF.

$ for in in *.jpg; do convert $i $(basename $i .jpg).tiff; done

Aus der Bilddatei "infile.png" wird ein neues Bild "infile-1024.png" mit den Abmessungen 1024x768 Pixel erzeugt.

$ convert -geometry 1024x768! infile.png infile-1024.png

Aus der Bilddatei "infile.png" wird ein neues Bild "infile-1024.png" mit den Abmessungen 1024x768 Pixel erzeugt. Das Bild wird dabei (ohne "!") auf diejenige Seitenlänge skaliert, für die das Bild am wenigsten geschrumpft werden muss.

$ convert -geometry 1024x768 infile.png infile-1024.png

Im Verzeichnis "klein" wird von jeder auf ".jpg" endenden Bilddatei ein Minibild mit einer Auflösung von 120x90 Pixel erzeugt.

$ for i in *.jpg; do convert "$i" -geometry 120x90! "klein/$i"; done

Scharfzeichnen (mit Stärke 6) des Bilds "infile.jpg" und Speichern des Ergebnisses in der Datei "outfile.jpg".

$ convert -sharpen 6 infile.jpg outfile.jpg

Versehen des Bilds "infile.jpg" mit einem weissen Rahmen, der 10 mal 10 Pixel breit ist. Das Ergebnis wird in der Datei "outfile.jpg" gespeichert.

$ convert -bordercolor=white -border 10x10 infile.jpg outfile.jpg

Versehen des Bilds "infile.jpg" mit einem "Wasserzeichen" - das Ergebnis wird als Datei "outfile.jpg" gespeichert.

$ convert -font helvetica -pointsize 40 -draw "gravity south fill black text 0,12 'Copyright Hans Muster' fill white text 1,11 \
  'Copyright Hans Muster'" infile.jpg outfile.jpg

Versehen aller JPG-Bilder im aktuellen Berzeichnis mit einem "Wasserzeichen" - die Ergebnisse werden im Unterverzeichnis "copy_pics" gespeichert. Die Originaldateien bleiben erhalten.

$ test -d copy_pics || mkdir copy_pics && for i in *.jpg; do convert -font helvetica -pointsize 40 -draw \
  "gravity south fill black text 0,12 'Copyright Hans Muster' fill white text 1,11 'Copyright Hans Muster'" "$i" "copy_pics/$i"; done

Erstellen einer HTML-Bildergalerie. Dabei wird die HTML-Datei "index.html" erstellt, die eine Übersichtsgrafik (im GIF-Format) mit einer verweissensitiven Grafik enthält. Über diese können die einzelnen Bilder mit einem Mausklick auf die Vorschaubilder angezeigt werden. Das Ergebnis (alle Bilddateien, die HTML- und die GIF-Datei) kann direkt ins WWW gestellt werden.

$ convert 'vid:*' index.html

Versehen der Bilddatei "infile.jpg" mit einem Kommentar. Die Ergebnis datei heisst "outfile.jpg".

$ convert -comment 'Der Uristier' infile.jpg outfile.jpg

Das Bild "bild.jpg" wird in eine Art Papierrahmen eingeschlossen und um einen zufälligen Wert gedreht ("+polaroid"). Die Ergebnisdatei heisst "bild.png".

$ convert bild.jpg +polaroid bild.png

Das Bild "bild.jpg" wird in eine Art Papierrahmen eingeschlossen und um einen zufälligen Wert gedreht. Mit "-bordercolor" wird ausserdem die Rahmenfarbe, mit "-background" der Farbton für den Schatten festgelegt. Die Ergebnisdatei heisst "bild.png".

$ convert bild.jpg -bordercolor white -background black +polaroid bild.png

Das Bild "bild.jpg" wird in eine Art Papierrahmen eingeschlossen und um 75 Grad gekippt ("-polaroid 75"). Die Ergebnisdatei heisst "bild.png".

$ convert bild.jpg -polaroid 75 bild.png

Weblinks

Vorlage:dewi