2019-11-17 von Mario
Bilder besitzen von Zeit zu Zeit eine große Auflösung, welche sich in der Dateigröße und in der Qualität widerspiegeln. Benötigt man weder das Eine noch das Andere, so können die Bilder mit verschiedenen Tools verkleinert werden.
Bei einem Bild ist die manuelle Konvertierung noch praktikabel, bei mehreren Bildern hingegen nicht. Unter Linux kann die Shell zur Massenverarbeitung verwendet werden. Als Voraussetzung wird das Programm “convert” benötigt, welches bei der Installation von ImageMagick mitgeliefert wird.
Installation von ImageMagick:
sudo apt-get install imagemagick
Mit dem Kommandozeilenprogramm „convert“ und ein wenig Bash Script ist die Konvertierung in einer Konsole sehr einfach umzusetzen. Dafür ein Terminal öffnen und in den Ordner wechseln, in dem sich die Bilder befinden. Jetzt den Einzeiler einfügen und ausführen. Die Bilder werden daraufhin um 50% verkleinert.
for i in $(ls *.png); do convert -resize 50% $i neu_$i; done
Code |
Beschreibung |
for i in $(ls *.png); |
Eine Schleife über alle PNG Dateien im aktuellen Ordner. |
do |
Beginn des Schleifeninhaltes |
convert -resize 50% $i neu_$i; |
Mit dem Programm “convert” wird jedes einzelne Bild um 50% (X-Achse) verkleinert.
Die Y-Achse wird proportional berechnet. Weiterhin wird jeweils ein neuer Dateiname “neu_ALTERNAME.png” vergeben.
Die Variable “$i” steht für den jeweiligen Dateinamen. |
done |
Ende des Schleifeninhaltes |
2015-08-04 von Mario
Aus einzelnen Grafikdateien kann mittels des Kommandozeilenprogramms “convert” ein animiertes GIF erstellt werden. Die Umkehrung habe ich bereits in dem Beitrag “Linux: Einzelbilder aus animiertem GIF extrahieren” beschrieben.
Zunächst wird das Softwarepaket ImageMagick benötigt. Danach steht der Befehl “convert” zur Verfügung. Als nächstes alle PNG Dateien in einen separaten Ordner ablegen und eine Konsole öffnen. Jetzt folgenden Befehl ausführen:
convert -delay 20 -loop 0 *.png newgif.gif
Daraufhin werden alle PNG Dateien in der Datei “newgif.gif” zusammengefasst und die GIF Animation ist erstellt.
2014-09-29 von Mario
Zunächst wird das Softwarepaket ImageMagick benötigt. Die Software beinhaltet unter anderem das Kommandozeilenprogramm “convert”.
convert animation.gif target.png
Die einzelnen Frames werden beim Extrahieren automatisch durchnummeriert.
2013-09-26 von Mario
Aufbauend auf dem Artikel Linux: PDF Dokument aus JPG Dateien erstellen, hier ein Bash Script zur Massenverarbeitung.
Die Ausgangssituation ist ein Ordner mit ca. 80 Grafik Dateien (JPG), diese sind durchgehend nummeriert (01.jpg, 02.jpg, … 80.jpg).
Dieses Script fasst sehr einfach alle Grafiken zu einem PDF Dokument zusammen.
#!/bin/bash
# loop over all JPG files
# convert JPG to PDF
for file in *.jpg;
do
convert $file "${file%.*}.pdf"
done
# merge all PDF files to one file
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite -sOutputFile=AlleInEinem.pdf *.pdf
# delete temporary PDF files
ls [0-9]*.pdf | xargs rm
echo "Done"
2013-05-22 von Mario
Der erste Schritt ist es, alle gewünschten “jpg” Dateien, mit dem Befehl convert, in PDF Dokumente umzuwandeln.
convert Beispiel01.jpg Beispiel01.pdf
Im zweiten Schritt werden die PDF Files mittels gs zusammengefügt.
gs -dBATCH -dNOPAUSE -sDEVICE=pdfwrite
-sOutputFile=AlleInEinem.pdf Beispiel01.pdf Beispiel02.pdf Beispiel03.pdf
Falls Bedarf bestehen sollte, kann abschließend noch ein Passwort, mit pdftk, vergeben werden.
pdftk AlleInEinem.pdf output AlleInEinem_mitPasswort.pdf user_pw geheim