ImageMagick: Unterschied zwischen den Versionen
Aus exmediawiki
C.heck (Diskussion | Beiträge) |
C.heck (Diskussion | Beiträge) |
||
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 89: | Zeile 89: | ||
'''$ for file in *.jpg; do convert $file -negate invertiert-$file; done''' | '''$ for file in *.jpg; do convert $file -negate invertiert-$file; done''' | ||
+ | |||
+ | * Größe der Einzelbilder mit convert (ImageMagick) verändern | ||
+ | '''$ convert picard_*.jpg -resize 50% pic_%03d.jpg''' | ||
+ | |||
+ | Mit der Wildcard '''*''' können wir dem Befehl '''convert''' mitteilen, daß wir alle JPEG Bilder, die mit '''picard_''' beginnen bearbeiten wollen. | ||
+ | |||
+ | Die Option '''-resize''' legt den Grad der Größenveränderung in Prozent fest. | ||
+ | |||
+ | Die ausgegebenen Bilder werden wie im letzten Punkt wieder laufend numeriert und tragen diesesmal die Vorsilbe '''pic_'''. | ||
+ | |||
+ | |||
+ | * Animation mit convert (ImageMagick) erstellen | ||
+ | '''$ convert pic_*.jpg -set delay 20 -loop 0 facepalm.gif''' | ||
+ | |||
+ | Erstellen aus einer Bildserie ein animiertes GIF. | ||
+ | |||
+ | Die Option '''-set delay''' legt die Abspielgeschwindigkeit fest, | ||
+ | |||
+ | die Option '''-loop 0''' erzeugt ein GIF, das kontinuierlich abgespielt wird. | ||
+ | |||
+ | Jede andere Zahl würde die Anzahl der Wiederholungen nach dem Laden des GIFs festlegen. | ||
==animate== | ==animate== | ||
Zeile 117: | Zeile 138: | ||
'''$ identify geek.jpg''' | '''$ identify geek.jpg''' | ||
geek.jpg JPEG 308x216 308x216+0+0 8-bit DirectClass 7.57KiB 0.000u 0:00.000 | geek.jpg JPEG 308x216 308x216+0+0 8-bit DirectClass 7.57KiB 0.000u 0:00.000 | ||
+ | |||
+ | ==mogrify== | ||
+ | |||
+ | *This command resizes all of the .png files in your directory to a size of 960 pixels by 528 pixels. | ||
+ | mogrify -resize 960x528 *.png | ||
+ | |||
+ | |||
+ | *This will scale all of your images to a width of 960 pixels, the height will be scaled accordingly, preserving the aspect ratio. | ||
+ | |||
+ | mogrify -resize 960 *.png | ||
+ | |||
+ | *alle bilder 800px hochkant resizen | ||
+ | mogrify -resize 800x *.JPG | ||
+ | |||
+ | *When and where possible this will scale your images to 960 by 528 pixels, but will preserve the aspect ratio of those images that won’t scale to these dimensions exactly. | ||
+ | mogrify -resize 960x528! *.png | ||
+ | |||
+ | |||
+ | |||
[[Category:HowTo]] | [[Category:HowTo]] |
Aktuelle Version vom 4. Juli 2019, 22:25 Uhr
Inhaltsverzeichnis
Beschreibung
Das Paket ImageMagick enthält sowohl mehrere Tools für die Kommandozeile, als auch eine für viele Programmiersprachen verfügbare Programmbibliothek, um die verfügbaren Funktionen direkt in einem Programm zu verwenden.
Die von ImageMagick beherrschten Funktionen strecken sich vom Zusammenfügen mehrerer Bilder über das Hinzufügen bzw. Erzeugen von einfachen Formen und Schrift, Verzerrungen, Größenveränderung und Drehen der Bilder bis hin zu wie von GIMP und Adobe Photoshop bekannten Filterfunktionen wie Unschärfe, Solarisation, Kontrastanpassung oder Invertierung.
Es eignet sich auch besonders zur Massenbearbeitung von Bildern.
http://www.imagemagick.org/Usage/
Die 11 Tools
Tool | Liste der jeweiligen Optionen |
---|---|
animate - spielt mehrere Bilder schnell hintereinander ab. | siehe auch: http://www.imagemagick.org/www/animate.html |
convert - liest Bilder, bearbeitet sie und speichert sie ab. | siehe auch: http://www.imagemagick.org/script/convert.php |
compare - vergleicht 2 Bilder und gibt die Unterschiede als Bilddatei aus. | siehe auch: http://www.imagemagick.org/script/compare.php |
composite - verbindet mehrere Bilder zu einem Bild. | siehe auch: http://www.imagemagick.org/script/composite.php |
conjure - führt Skripte in der Skriptsprache von ImageMagick aus. | siehe auch: http://www.imagemagick.org/www/conjure.html |
display - stellt Bilder auf einem X-Server dar. | siehe auch: http://www.imagemagick.org/www/display.html |
identify - gibt Dateiformat, Bildgröße usw. von Bilddateien aus. | siehe auch: http://www.imagemagick.org/script/identify.php |
import - macht Screenshots. | siehe auch: http://www.imagemagick.org/www/import.html |
montage - fasst mehrere Bilder zu einem großen Einzelbild zusammen | siehe auch: http://magick.imagemagick.org/script/montage.php?ImageMagick=j4shrq587dmuppu5pifrjekqg3 |
mogrify - wie convert, nur dass Ein- und Ausgabedatei gleich sind. | siehe auch: http://www.imagemagick.org/www/mogrify.html |
stream - liest aus Bilddateien Teile aus und gibt sie als Rohdaten, Fließkommazahlen oder ähnliches aus. | siehe auch: http://www.imagemagick.org/www/stream.html |
Beispiele
convert
- geek.gif in geek.jpg konvertieren
$ convert geek.gif geek.jpg
- alle Bilder im momentanen Verzeichnis kopieren und umbenennen in: img001, img002, img003 etc.
$ convert * img%03d.jpg
- alle .png- Bilder im momentanen Verzeichnis in JPEG's konvertieren
$ convert *.png img%03d.jpg
- die Größe des Bildes geek.jpg auf 216 Px Breite setzen
$ convert -resize 216x geek.jpg geek.jpg
- die Größe des Bildes geek.jpg auf 216 Px Höhe setzen
$ convert -resize x216 geek.jpg geek.jpg
- das PDF- File heft.pdf verkleinern und die Qualität verringern
$ convert heft.pdf -resize 25% -quality 92 heftklein.pdf
-resize 25% skaliert das PDF auf 25% herunter
-quality 92 verringert die Qualität um 8%
- das PDF- File heft.pdf in einzelne JPEG's kovertieren
$ convert heft.pdf einzelseiten.jpg
- nur die Seiten 3, 7 und 9 aus dem PDF- File heft.pdf in JPEG's konvertieren
$ convert heft.pdf[3,7,9] einzelseiten.jpg
[3,7,9] Wildcard
- alle JPEG's im momentanen Verzeichnis animieren
$ convert -delay 10 *.jpg clip.mng
-delay 10 der Faktor 10 stellt die Geschwindigkeit dar in der die einzelnen Bilder aufeinander folgen
- alle Bilder in einem Verzeichnis um 90 Grad drehen
$ for file in *; do convert -rotate 90 "$file" "$file"; done
- alle Bilder in einem Verzeichnis invertieren
$ for file in *.jpg; do convert $file -negate invertiert-$file; done
- Größe der Einzelbilder mit convert (ImageMagick) verändern
$ convert picard_*.jpg -resize 50% pic_%03d.jpg
Mit der Wildcard * können wir dem Befehl convert mitteilen, daß wir alle JPEG Bilder, die mit picard_ beginnen bearbeiten wollen.
Die Option -resize legt den Grad der Größenveränderung in Prozent fest.
Die ausgegebenen Bilder werden wie im letzten Punkt wieder laufend numeriert und tragen diesesmal die Vorsilbe pic_.
- Animation mit convert (ImageMagick) erstellen
$ convert pic_*.jpg -set delay 20 -loop 0 facepalm.gif
Erstellen aus einer Bildserie ein animiertes GIF.
Die Option -set delay legt die Abspielgeschwindigkeit fest,
die Option -loop 0 erzeugt ein GIF, das kontinuierlich abgespielt wird.
Jede andere Zahl würde die Anzahl der Wiederholungen nach dem Laden des GIFs festlegen.
animate
- abspielen einer Animation
$ animate clip.mng
import
- Screenshot eines bestimmten Teilabschnitts des Desktops machen
$ import screenshot.png
- Screenshot des gesamten Desktops
$ import -window root screenshot.png
- Screenshot eines aktiven Fensters
$ import -frame screenshot. png
- Screenshot des gesamten Desktops nach einer Wartezeit von 5 Sekunden
$ sleep 5; import -window root screenshot.png
Anstatt .png kann man natürlich auch .jpg oder .gif etc. verwenden
identify
- Metainformationen des Bildes geek.jpg erfragen
$ identify geek.jpg geek.jpg JPEG 308x216 308x216+0+0 8-bit DirectClass 7.57KiB 0.000u 0:00.000
mogrify
- This command resizes all of the .png files in your directory to a size of 960 pixels by 528 pixels.
mogrify -resize 960x528 *.png
- This will scale all of your images to a width of 960 pixels, the height will be scaled accordingly, preserving the aspect ratio.
mogrify -resize 960 *.png
- alle bilder 800px hochkant resizen
mogrify -resize 800x *.JPG
- When and where possible this will scale your images to 960 by 528 pixels, but will preserve the aspect ratio of those images that won’t scale to these dimensions exactly.
mogrify -resize 960x528! *.png