Jak hromadně zmenšit fotky

10. 3. 2008 11:26 (aktualizováno) Petr Krčmář

Docela hodně fotím a často potřebuji hromadně otočit a zmenšit velkou kupu různých fotek. Určitě nejsem sám a tak nabízím malý návod, jak na to v Linuxu rychle a jednoduše.

Často se mi stává, že nafotím velkou sérii fotek, kterou pak potřebuji otočit, zmenšit a třeba poslat přes internet. Abych se nemořil s několika stovkami fotek třeba v Gimpu, našel jsem si nástroje, které to vše zvládnou za mě.

Otočka

Lepší foťáky mají čidlo, které jim v době focení řekne, v jaké poloze jsou. Tu informaci pak zapisují do ExIF. Dá se kdykoliv později získat a automaticky s ní pak můžete fotku otočit. Já k tomu používám program jhead ze stejnojmenného balíku (v Debianu). Použití je jednoduché:

  $ jhead -autorot *

Zajistí automatické otočení fotek v aktuálním adresáři.

Zmenšovačka

Velmi často po mě někdo chce také fotky zmenšit a poslat. Obvykle to znamená je zatarovat a uploadnout na server nebo přímo do nějaké galerie. Pro automatické zmenšování používám program convert z balíčku ImageMagick.

Napsal jsem si malý skript, který v aktuálním adresáři vytvoří podadresář zmensene a do něj nazmenšuje všechny fotky, které najde opět v aktuálním adresáři. Skript je opravdu jednoduchý:

  #!/bin/bash
mkdir zmensene
for soubor in *.jp* ; do
convert $soubor -resize 800x600 -quality 80 zmensene/$soubor
done

Klíčový je samozřejmě předposlední řádek, kde je nastaveno rozlišení a kvalita výsledného obrázku. Parametry si samozřejmě můžete změnit dle aktuální potřeby. U rozlišení je výhoda, že convert automaticky zachovává poměr stran zdrojové fotografie, přičemž nepřekročí ani jeden z uvedených rozměrů. Vůbec tedy nevadí, že má fotka jiný poměr nebo je na výšku. U mě tedy skript běžně dělá rozměry 800×533 nebo 400×600.

Sdílet