Co používáte na kompresi obrázků?

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
nettolog
Člen | 68
+
0
-

Ahoj, koukám na Google PageSpeed Insights, kde potřebuji získat lepší výsledek a hodně procent web ztrácí díky nulové optimalizaci obrázků.

Zkusil jsem použít možnost v Nette:

$img = Image::fromFile();
$img->save();

a:

  1. stále mi to ukazuje, že kompresí mohou být obrázky menší v řádu desítek procent,
  2. komprese rozhodně není bezztrátová, ztráta kvality je vidět na první pohled.

Osvědčila se vám na to nějaká třída? Budu rád za tipy.

Editoval nettolog (24. 7. 2015 21:53)

voda
Člen | 561
+
+2
-
nettolog
Člen | 68
+
0
-

Díky moc za radu. Vynikající nástroj, komprese je stoprocentní, hláška z pageinsights úplně zmizela.

Editoval nettolog (1. 8. 2015 16:32)

camel
Člen | 2
+
0
-

Já používám aplikaci FileOptimizer (http://nikkhokkho.sourceforge.net/static.php?…), dokáže optimalizovat velké množství typů souborů a funguje skvěle.

iguana007
Člen | 970
+
0
-

Já používám toto: https://github.com/…ulp-imagemin

enumag
Člen | 2118
+
0
-

Ono by to chtělo něco na miniatury které vygeneruje PHP automaticky když jsou potřeba. Tzn. externí služby a FileOptimizer do toho těžko zapojím. Gulp jen hodně teoreticky, chtělo by to nějakou PHP knihovnu nebo alespoň API službu.

Oli
Člen | 1215
+
+1
-

@enumag tak tinypng a tinyjpg vypadjí, že mají PHP api/knihovnu: https://tinypng.com/…eference/php.

chemix
Nette Core | 1294
+
0
-

@nettolog imho tobe hlavne pomuze to, ze ty obrazky nebudes rovnou nacitat, ale az ve chvili kdy na ne uzivatel doscrolluje neco jako http://luis-almeida.github.io/unveil/

Jinak na lokalni zmensovani pouzivam kombo JPEGmini + ImageOptim ( JPEGmini ma i server verzi http://www.jpegmini.com/server)

nettolog
Člen | 68
+
0
-

@enumag Přesně tak https://tinypng.com/ funguje, vlastně se stačí před zobrazením obrázku zeptat, jestli existuje soubor $name.'_opt'.$extension, pokud ano, vrátit, pokud ne, tak jen zavolat Tinify\fromFile($name.$extension)->toFile($name.'_opt'.$extension); a zeptat se znovu. Jinak to API je propojené, takže funguje png i jpg, akorát je potřeba ohlídat ostatní přípony, protože tam to vyhodí výjimku.

@chemix Díky za tip, podívám se na to. Na imageoptim jsem taky koukal, míru komprese má taky perfektní, ale běží jen na Macu a pokud je na webu hodně uživatelského obsahu, tak je lepší řešit to nějak automatizovaně.

Editoval nettolog (5. 8. 2015 15:28)