JPEG ist das meistverwendete Grafik-Format im Internet
Auch zuhause sammeln sich im Laufe der Jahre sich oft unzählige JPEG-Dateien an.
Diese brauchen entsprechend Speicherplatz.
Nicht jedes Programm, Kamera oder anderes Gerät speichert diese Dateien optimal ab. Dadurch wird oft mehr Speicherplatz gebraucht, als nötig ist.
Abhilfe schafft hier das Programm jpegoptim.
Das Programm verkleinert die Dateien durch eine Optimierung der Huffmann-Tabellen.
Die Bilder erleiden dadurch keinen Qualitätsverlust.
Die Ersparnis an Speicherplatz hängt stark von der Bild-Quelle ab. Bei mir liegt diese meistens zwischen ca. 4 % und 25 %.
Bilder die Sie in Webseiten verwenden, sollten Sie auf jeden Fall optimieren. Das spart Speicherplatz und Brandbreite. Dadurch wird weniger Energie verbraucht und die Besucher bekommen die Seite schneller ausgeliefert.
Schnellere Seiten haben auch ein höheres Suchmaschinen-Ranking (SEO).
JPEG-recompress ist dann die Lösung.
Download und Installation
Für verschiedene Betriebsysteme
zypper install jpegoptim
apt-get install jpegoptim
Das Programm kann direkt von der Kommandozeile gestartet werden.
Download am Ende der Seite.
Download am Ende der Seite.
Parameter
- -d<Pfad>, --dest=<Pfad>
- Legt das alternative Zielverzeichnis fest, in dem die optimierten Dateien gespeichert werden soll. (Standard ist das Überschreiben der Originale). Bitte beachte, dass unveränderte Dateien nicht zum Zielverzeichnis hinzugefügt werden. Dies bedeutet, wenn die Quelldatei nicht komprimiert werden kann, wird keine Datei im Zielpfad erstellt.
- -f, --force
- Immer optimieren, auch wenn das Ergebnis größer als die Originaldatei ist.
Nur zu empfehlen bei der Umwandlung von Normal nach Progressive. - -h, --help
- Zeigt kurze Nutzungsinformationen an und beendet das Programm.
- -m<Qualität>, --max=<Qualität>
- Legt den maximalen Bildqualitätsfaktor fest (deaktiviert verlustfreie Optimierungsmodus, der standardmäßig aktiviert ist). Diese Option reduziert die Qualität der Quelldateien, die mit höher Qualität gespeichert wurden. Dateien, die bereits eine geringere Qualität haben werden verlustfreien komprimiert.
Gültige Werte für die Qualität sind: 0 - 100 - -n, --noaction
- Optimiert die Dateien nicht, sondern gibt nur die Ergebnisse aus.
- -S<Größe>, -size=<Größe>
- Versucht die Datei auf die angegebene Größe zu optimieren (deaktiviert verlustfreien Modus).
Die Zielgröße wird entweder in Kilobyte (1 - n) oder als Prozentsatz (1 % - 99 %) der ursprünglichen Dateigröße angegeben.
Wird die Größe nicht beim ersten Durchlauf erreicht, kann ein zweiter helfen. - -T<Schwellwert>, --threshold=<Schwellwert>
- Läßt die Datei unverändert, wenn die Komprimierung niedriger ist als der Schwellwert (%).
Gültige Werte für den Schwellenwert sind: 0 - 100 - -b, --csv
- Gibt den Fortschritt im CSV-Format aus.
- -o, --overwrite
- Überschreibt die Zieldatei, auch wenn sie vorhanden ist (bei Verwendung der Option -d).
- -p, --preserve
- Beibehalten der Änderungszeiten der Dateien.
- -P, --preserve-perm
- Beibehalten der Dateienrechte.
- -q, --quiet
- Keine Bildschirmausgaben.
- -t, --totals
- Zusammenfassung nach Verarbeitung aller Dateien.
- -v, --verbose
- Aktiviert die ausführliche Bildschirmausgabe
- -V, --version
- Gibt die Programm-Version aus.
- --strip-all
- Entfernt alle (Comment & Exif) Daten aus der Ausgabedatei. Standardmäßig werden nur Kommentar- und Exif-Markierungen beibehalten, alles andere wird verworfen.
- --strip-none
- Entfernt keine Daten aus der Ausgabedatei.
- --strip-adobe
- Adobe (APP14) Marker aus der Ausgabedatei entfernen.
- --strip-com
- COM-Daten (Strip Comment) aus der Ausgabedatei entfernen.
- --strip-exif
- Exif-Daten aus der Ausgabedatei entfernen.
- --strip-iptc
- IPTC-Daten aus der Ausgabedatei entfernen.
- --strip-icc
- ICC-Profile aus der Ausgabedatei entfernen.
- --strip-jfxx
- JPXX-Daten (JFIF Erweiterung) aus der Ausgabedatei entfernen.
- --strip-xmp
- XMP-Daten aus der Ausgabedatei entfernen.
- --keep-*
- Behält angegebe Metadaten. Das Gegenteil von --strip-*
- --all-normal
- Alle Ausgabedateien werden nicht progressiv.
Kann in Verbindung mit --force zur reinen Umwandlung verwendet werden. - --all-progressive
- Alle Ausgabedateien werden progressiv.
Kann in Verbindung mit --force zur reinen Umwandlung verwendet werden. - --stdout
- Ausgabe nach stdout anstatt nach Datei.
- --stdin
- Eingabe von stdin anstatt aus Datei lesen.
- --nofix
- Überspringt die Bearbeitung von Dateien, wenn diese Fehler enthalten.
- --all-arith
- Force all output files to use arithmetic coding.
- --all-huffman
- Force all output files to use Huffman coding
Original man page
Anwendungsbeispiele
Rekursives Bearbeiten aller JPEG-Dateien
- Die Dateien werden ausgehend vom aktuellen Verzeichnis gesucht und bearbeitet.
- Alle Informationen werden entfernt.
- Die Orignaldatei wird überschrieben!
- Erstellungsdatum und Berechtigungen werden beibehalten.
for /R %%i in (*.jpg) do "R:\jpegoptim.exe" -p -P --strip-all "%%i"
find -type f -name "*.jpg" -exec jpegoptim -p -P --strip-all {} \;
Vierfach parallel ausführen: find . -iregex '.*\.\(jpg\|jpeg\|jpe\)$' -print0 | xargs -0 -n 1 -P 4 jpegoptim -p -P --strip-all
Dateien optimieren
- PNG-Dateien verlustfrei optimieren mit pingo.
- PNG-Dateien komprimieren mit pngquant.
- JPEG-Dateien komprimieren mit jpeg-recompress.
- JPEG-Dateien verlustfrei optimieren mit jpegoptim.
- PDF-Dateien optimieren und verkleinern.
- Metadaten bearbeiten mit dem ExifTool.
Software
Begriffserklärung
Downloads
Titel-Bild von Albrecht Fietz auf Pixabay