GNU/Linux >> LINUX-Kenntnisse >  >> Linux

So optimieren und komprimieren Sie JPEG- oder PNG-Bilder in der Linux-Befehlszeile

Sie haben viele Bilder und möchten die Bilder optimieren und komprimieren, ohne die ursprüngliche Qualität zu verlieren, bevor Sie sie in eine Cloud oder einen lokalen Speicher hochladen? Es gibt viele GUI-Anwendungen, die Ihnen helfen, die Bilder zu optimieren. Hier sind jedoch zwei einfache Befehlszeilenprogramme zum Optimieren von Bildern:

  1. jpegoptim – ist ein Dienstprogramm zum Optimieren/Komprimieren von JPEG-Dateien ohne Qualitätsverlust.
  2. OptiPNG – ist ein kleines Programm, das PNG-Bilder auf eine kleinere Größe optimiert, ohne dass Informationen verloren gehen.

Mit diesen beiden Tools können Sie entweder ein einzelnes oder mehrere Bilder gleichzeitig optimieren.

Komprimieren oder optimieren Sie JPEG-Bilder über die Befehlszeile

jpegoptim ist ein Befehlszeilentool, mit dem JPEG-, JPG- und JFIF-Dateien optimiert und komprimiert werden können, ohne dass die eigentliche Qualität verloren geht. Dieses Tool unterstützt die verlustfreie Optimierung, die auf der Optimierung der Huffman-Tabellen basiert.

Installieren Sie jpegoptim unter Linux

Um jpegoptim zu installieren Führen Sie auf Ihren Linux-Systemen den folgenden Befehl von Ihrem Terminal aus.

Über Debian und seine Derivate
# apt-get install jpegoptim
or
$ sudo apt-get install jpegoptim
Auf RedHat-basierten Systemen

Auf RPM-basierten Systemen wie RHEL , CentOS , Fedora usw., müssen Sie das EPEL-Repository installieren und aktivieren oder alternativ das Epel-Repository wie gezeigt direkt von der Befehlszeile aus installieren:

# yum install epel-release
# dnf install epel-release    [On Fedora 22+ versions]

Als nächstes installieren Sie das Programm jpegoptim aus dem Repository wie gezeigt:

# yum install jpegoptim
# dnf install jpegoptim    [On Fedora 22+ versions]

So verwenden Sie den JPEGoptim-Bildoptimierer

Die Syntax von jpegoptm lautet:

$ jpegoptim filename.jpeg
$ jpegoptim [options] filename.jpeg

Lassen Sie uns nun die folgende tecmint.jpeg komprimieren image, aber bevor Sie das Bild optimieren, ermitteln Sie zuerst die tatsächliche Größe des Bildes mit dem Befehl du wie gezeigt.

$ du -sh tecmint.jpeg 

6.2M	tecmint.jpeg

Hier beträgt die tatsächliche Dateigröße 6,2 MB , komprimieren Sie nun diese Datei, indem Sie Folgendes ausführen:

$ jpegoptim tecmint.jpeg 

Öffnen Sie das komprimierte Bild in einer beliebigen Bildbetrachteranwendung, Sie werden keine großen Unterschiede feststellen. Die Quell- und komprimierten Bilder haben die gleiche Qualität.

Der obige Befehl optimiert die Bilder auf die maximal mögliche Größe. Sie können das angegebene Bild jedoch auf eine bestimmte Größe komprimieren, dies deaktiviert jedoch die verlustfreie Optimierung.

Lassen Sie uns zum Beispiel oben das Bild von 5,6 MB komprimieren auf rund 250.000 .

$ jpegoptim --size=250k tecmint.jpeg

Batch-JPEG-Bildkomprimierung und -optimierung

Sie fragen sich vielleicht, wie Sie die Bilder im gesamten Verzeichnis komprimieren können, das ist auch nicht schwierig. Wechseln Sie in das Verzeichnis, in dem Sie die Bilder haben.

[email protected] ~ $ cd img/
[email protected] ~/img $ ls -l
total 65184
-rwxr----- 1 tecmint tecmint 6680532 Jan 19 12:21 DSC_0310.JPG
-rwxr----- 1 tecmint tecmint 6846248 Jan 19 12:21 DSC_0311.JPG
-rwxr----- 1 tecmint tecmint 7174430 Jan 19 12:21 DSC_0312.JPG
-rwxr----- 1 tecmint tecmint 6514309 Jan 19 12:21 DSC_0313.JPG
-rwxr----- 1 tecmint tecmint 6755589 Jan 19 12:21 DSC_0314.JPG
-rwxr----- 1 tecmint tecmint 6789763 Jan 19 12:21 DSC_0315.JPG
-rwxr----- 1 tecmint tecmint 6958387 Jan 19 12:21 DSC_0316.JPG
-rwxr----- 1 tecmint tecmint 6463855 Jan 19 12:21 DSC_0317.JPG
-rwxr----- 1 tecmint tecmint 6614855 Jan 19 12:21 DSC_0318.JPG
-rwxr----- 1 tecmint tecmint 5931738 Jan 19 12:21 DSC_0319.JPG

Führen Sie dann den folgenden Befehl aus, um alle Bilder auf einmal zu komprimieren.

[email protected] ~/img $ jpegoptim *.JPG
DSC_0310.JPG 6000x4000 24bit N Exif  [OK] 6680532 --> 5987094 bytes (10.38%), optimized.
DSC_0311.JPG 6000x4000 24bit N Exif  [OK] 6846248 --> 6167842 bytes (9.91%), optimized.
DSC_0312.JPG 6000x4000 24bit N Exif  [OK] 7174430 --> 6536500 bytes (8.89%), optimized.
DSC_0313.JPG 6000x4000 24bit N Exif  [OK] 6514309 --> 5909840 bytes (9.28%), optimized.
DSC_0314.JPG 6000x4000 24bit N Exif  [OK] 6755589 --> 6144165 bytes (9.05%), optimized.
DSC_0315.JPG 6000x4000 24bit N Exif  [OK] 6789763 --> 6090645 bytes (10.30%), optimized.
DSC_0316.JPG 6000x4000 24bit N Exif  [OK] 6958387 --> 6354320 bytes (8.68%), optimized.
DSC_0317.JPG 6000x4000 24bit N Exif  [OK] 6463855 --> 5909298 bytes (8.58%), optimized.
DSC_0318.JPG 6000x4000 24bit N Exif  [OK] 6614855 --> 6016006 bytes (9.05%), optimized.
DSC_0319.JPG 6000x4000 24bit N Exif  [OK] 5931738 --> 5337023 bytes (10.03%), optimized.

Sie können auch mehrere ausgewählte Bilder gleichzeitig komprimieren:

$ jpegoptim DSC_0310.JPG DSC_0311.JPG DSC_0312.JPG 
DSC_0310.JPG 6000x4000 24bit N Exif  [OK] 6680532 --> 5987094 bytes (10.38%), optimized.
DSC_0311.JPG 6000x4000 24bit N Exif  [OK] 6846248 --> 6167842 bytes (9.91%), optimized.
DSC_0312.JPG 6000x4000 24bit N Exif  [OK] 7174430 --> 6536500 bytes (8.89%), optimized.

Weitere Einzelheiten zu jpegoptim Tool finden Sie in den Manpages.

$ man jpegoptim 

PNG-Bilder über die Befehlszeile komprimieren oder optimieren

OptiPNG ist ein Befehlszeilentool zum Optimieren und Komprimieren von PNG-Dateien (Portable Network Graphics) ohne Verlust der ursprünglichen Qualität.

Die Installation und Nutzung von OptiPNG ist jpegoptim sehr ähnlich .

Installieren Sie OptiPNG unter Linux

Zur Installation von OptiPNG Führen Sie auf Ihren Linux-Systemen den folgenden Befehl von Ihrem Terminal aus.

Über Debian und seine Derivate
# apt-get install optipng
or
$ sudo apt-get install optipng
Auf RedHat-basierten Systemen
# yum install optipng
# dnf install optipng    [On Fedora 22+ versions]

Hinweis :Sie müssen ein epel-Repository haben auf Ihrem RHEL/CentOS aktiviert basierten Systemen, um optipng zu installieren Programm.

Verwendung des OptiPNG-Bildoptimierers

Die allgemeine Syntax von optipng ist:

$ optipng filename.png
$ optipng [options] filename.png

Lassen Sie uns die tecmint.png komprimieren Bild, aber überprüfen Sie vor dem Optimieren zuerst die tatsächliche Größe des Bildes wie gezeigt:

[email protected] ~/img $ ls -lh tecmint.png 
-rw------- 1 tecmint tecmint 350K Jan 19 12:54 tecmint.png

Hier beträgt die tatsächliche Dateigröße des obigen Bildes 350 KB , komprimieren Sie nun diese Datei, indem Sie Folgendes ausführen:

[email protected] ~/img $ optipng tecmint.png 
OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.

** Processing: tecmint.png
1493x914 pixels, 4x8 bits/pixel, RGB+alpha
Reducing image to 3x8 bits/pixel, RGB
Input IDAT size = 357525 bytes
Input file size = 358098 bytes

Trying:
  zc = 9  zm = 8  zs = 0  f = 0		IDAT size = 249211
                               
Selecting parameters:
  zc = 9  zm = 8  zs = 0  f = 0		IDAT size = 249211

Output IDAT size = 249211 bytes (108314 bytes decrease)
Output file size = 249268 bytes (108830 bytes = 30.39% decrease)

Wie Sie in der obigen Ausgabe sehen, ist die Größe der tecmint.png Datei wurde um bis zu 30,39 % reduziert . Überprüfen Sie nun die Dateigröße erneut mit:

[email protected] ~/img $ ls -lh tecmint.png 
-rw-r--r-- 1 tecmint tecmint 244K Jan 19 12:56 tecmint.png

Öffnen Sie das komprimierte Bild in einer beliebigen Bildbetrachteranwendung, Sie werden keine großen Unterschiede zwischen den Original- und komprimierten Dateien feststellen. Die Quell- und komprimierten Bilder haben die gleiche Qualität.

Batch-PNG-Bildkomprimierung und -optimierung

Um Batch- oder mehrere PNG-Bilder auf einmal zu komprimieren, gehen Sie einfach in das Verzeichnis, in dem sich alle Bilder befinden, und führen Sie den folgenden Befehl zum Komprimieren aus.

[email protected] ~ $ cd img/
[email protected] ~/img $ optipng *.png

OptiPNG 0.6.4: Advanced PNG optimizer.
Copyright (C) 2001-2010 Cosmin Truta.

** Processing: Debian-8.png
720x345 pixels, 3x8 bits/pixel, RGB
Input IDAT size = 95151 bytes
Input file size = 95429 bytes

Trying:
  zc = 9  zm = 8  zs = 0  f = 0		IDAT size = 81388
                               
Selecting parameters:
  zc = 9  zm = 8  zs = 0  f = 0		IDAT size = 81388

Output IDAT size = 81388 bytes (13763 bytes decrease)
Output file size = 81642 bytes (13787 bytes = 14.45% decrease)

** Processing: Fedora-22.png
720x345 pixels, 4x8 bits/pixel, RGB+alpha
Reducing image to 3x8 bits/pixel, RGB
Input IDAT size = 259678 bytes
Input file size = 260053 bytes

Trying:
  zc = 9  zm = 8  zs = 0  f = 5		IDAT size = 222479
  zc = 9  zm = 8  zs = 1  f = 5		IDAT size = 220311
  zc = 1  zm = 8  zs = 2  f = 5		IDAT size = 216744
                               
Selecting parameters:
  zc = 1  zm = 8  zs = 2  f = 5		IDAT size = 216744

Output IDAT size = 216744 bytes (42934 bytes decrease)
Output file size = 217035 bytes (43018 bytes = 16.54% decrease)
....

Weitere Einzelheiten zu optng man-Seiten überprüfen.

$ man optipng

Schlussfolgerung

Wenn Sie ein Webmaster sind und optimierte Bilder über Ihre Website oder einen Blog bereitstellen möchten, können diese Tools sehr praktisch sein. Diese Tools sparen nicht nur Speicherplatz, sondern reduzieren auch die Bandbreite beim Hochladen der Bilder.

Wenn Sie einen anderen besseren Weg kennen, um dasselbe zu erreichen, lassen Sie es uns in den Kommentaren wissen und vergessen Sie nicht, diesen Artikel in Ihren sozialen Netzwerken zu teilen und uns zu unterstützen.


Linux
  1. So finden und sortieren Sie Dateien basierend auf Änderungsdatum und -zeit in Linux

  2. So optimieren und komprimieren Sie JPEG- oder PNG-Bilder in der Linux-Befehlszeile

  3. So analysieren und verschönern Sie JSON mit Linux-Befehlszeilentools

  4. So komprimieren und dekomprimieren Sie Dateien unter Linux

  5. Wie komprimiert und extrahiert man Dateien mit dem tar-Befehl unter Linux?

So konvertieren Sie PNG-Bilder im Stapelbetrieb in das JPG-Format unter Linux

So schneiden und skalieren Sie Bilder unter Linux mit Gwenview

So komprimieren Sie eine PNG-Bilddatei unter Linux

So konvertieren Sie PDF in PNG-Bilder und zurück unter Linux

So löschen Sie Dateien und Verzeichnisse mit der Linux-Befehlszeile

So installieren und verwenden Sie Pigz, um Dateien unter Linux schneller zu komprimieren