Možná máte v počítači spoustu obrázků, které zabírají příliš mnoho místa, dá se s tím něco dělat? Například je zkomprimovat bez ztráty kvality. Komprese může být velmi vhodná také v případě nahrávání sady obrázků na cloudový server. Právě o tom bude řeč v našem článku.
Způsob komprese obrázků
Je známo mnoho různých grafických nástrojů, které umožňují tento problém řešit, ale ve skutečnosti je vše mnohem jednodušší. Jak komprimovat obrázky pomocí nástrojů?
Existují dvě plnohodnotné možnosti:
- jpegoptim;
- optipng.
JPEG - nejběžnější formát obrázků, v tomto článku se budeme zabývat kompresí tohoto formátu obrázků. Uvažujme tedy o práci v programu jpegoptim, díky němuž bude možné provádět kompresi obrázků tohoto formátu.
Jak provést kompresi obrázků
Program jpegoptim - kompletní nástroj, který umožňuje použít pro kompresi formátů JPEG, JPG a JFIF. Přitom komprese probíhá bez ztráty kvality. Nástroj optimalizuje obrázky na základě principů Huffmanovy tabulky. V algoritmu dochází ke kompresi JPEG, ale funguje způsobem, který snižuje kvalitu. Komprese pomocí programu jpegoptim nepoškozuje kvalitu obrázku.
Instalace programu
Pro instalaci programu v Ubuntu je třeba spustit:
$ sudo apt install jpegoptim
Ve Fedoře, CentOS a podobných distribucích musíte nejprve přidat repozitář epel-release.
To lze provést příkazem:
$ sudo yum install epel-release
Nebo:
$ sudo dnf install epel-release
Můžete nainstalovat jpegoptim z nedávno přidaného repozitáře:
$ sudo yum install jpegoptim
Nebo:
$ sudo dnf install jpegoptim
Jak používat nástroj
Použití programu v Linuxu není příliš obtížné. Je třeba program spustit a předat název souboru.
Syntaxe by měla být následující:
$ jpegoptim опции имя_файла.jpeg
Zvažte možnosti nástroje:

Jak optimalizovat obrázek pomocí programu?
Nejprve se podívejme na původní velikost:
$ du image.jpg

Proveďte nejjednodušší optimalizaci:
$ jpegoptim image.jpg

Podívejme se na velikost:
$ du image.jpg

Proběhla komprese jpg, otevřeme obrázek v libovolném programu a zjistíme, že se kvalita vůbec nezměnila. Zdrojový a hotový obrázek jsou identické.
Vlevo je obrázek po kompresi, vpravo je originál:

Potřebujete zkomprimovat obrázek na určitou velikost?
Musíte obětovat kvalitu:
$ jpegoptim --size=250k image.jpeg
Obrázek se sice zkomprimuje, ale utrpí tím jeho kvalita. Pokud máte hodně obrázků, použijte dávkovou kompresi: Přejděte do složky s obrázky, spusťte příkaz compress.
$ cd images/
$ jpegoptim *.jpg

Můžete také vypsat několik obrázků najednou:
$ jpegoptim image1.jpg image2.jpg
Pro optimalizaci všech obrázků v určitém adresáři můžete použít příkaz xargs spolu s příkazem find. Například optimalizujte všechny obrázky v adresáři a pak je přesuňte do ~/compressed:
$ find . -name "*.jpg" | xargs jpegoptim -d ~/compressed -p
Komprese obrázků jpg v Linuxu je velmi snadná a mohli jste se o tom přesvědčit. V příštím článku si povíme, jak komprimovat obrázky png.