Ottimizzazione di immagini per iOS, Image Optimization on iOS (iPhone, iPad)

Recentemente in alcune app, abbiamo notevolmente diminuito le dimensioni del file IPA che inviamo ad Apple.
Sviluppando un’app con molti contenuti grafici siamo riusciti a ridurre di circa il 60% la dimensione del pacchetto da inviare ad Apple, il cosidetto bundle file.

Quando si sviluppa un’ universal  iPad / iPhone app e , sopratutto, se si vuole aggiungere il supporto per la visualizzazione retina per  il nuovo iPad 3 possiamo incombere i dimesioni del pacchetto piuttosto eccessive.
Molte app vengono pensata per avere una moltitudine textures a schermo intero , questo accade in quanto molti designers preferiscono illustrare al meglio le proprie idee. Tali immagini ,se pensate per iPad 3, alla dimesione di 2048 x 1536 e in formato PNG possono risultare molto pesanti. La conversione di alcune di queste immagini in formato JPEG farà risparmiare parecchio spazio.
E ‘un peccato che le jpeg non vengono caricate più rapidamente, ma alcuni PNG che possono essere anche maggiori du 10MB , quando vengono convertote in jpeg pesano circa ~ 200Kb.
Questo è  un buon primo passo, ma bisogna stare molto attenti a non deteriorare la qualità.

La conversione da png a jpg non basta: anche dopo aver convertito il maggior numero di grandi texture il peso del bundle IPA puo’ risultare ancora consistente.
Il nostro obiettivo è quello di essere quasi sempre sotto i 20 MB cosi’ che i vecchi dispositivi possano scaricare l’app anche senza il WiFi.

ImageOptim: Basterà lanciare al suo interno la singola immagine o anche un gruppo, e saranno immediatamente compressi senza ridurre la qualità . Si riduce in media di circa il 15–35 %

Leggendo tra i diversi siti ho trovato alcuni utili consigli nel blog di Sam Soffes (http://samsoff.es/posts/image-optimization-on-ios ) che in suo articolo consiglia l’utilizzo di  ImageOptim, un piccolo programma che ottimizza le immagini. Con questa app per Mac osx i flis vengono processato in modo da occupare meno spazio su disco e in modo che possano essere caricate più velocemente , attraverso l”uso de i migliori parametri di compressione provvedendo a rimuovere i commenti inutili e i profili colore. Il software gestisce PNG, JPEG e GIF animate.
ImageOptim integra perfettamente  i vari strumenti di ottimizzazione: PNGOUT, AdvPNG, pngcrush, esteso OptiPNG, jpegoptim, jpegrescan, jpegtran e Gifsicle.
Particolarmente adatto per la pubblicazione di immagini sul web (restringe facilmente le immagini  “salvate” per il Web in Photoshop) si è rivelto utile per creare applicazioni Mac e iPhone / iPad sempre più leggere.

Inoltre è possibile convertire molte immagini come PNG8;  in Photoshop, nel sezione File>Salva per Web  e’ possibile esportare come PNG8 invece di PNG24 quelle immagini che vanno bene come GIF. Anche se non supporta alpha variabile, è ideale per immagini semplici.
Sam considera  ImageOptim addirittura fantastico; processa le immagini attraverso una serie di strumenti comprimendo il più possibile e senza ridurre la qualità. Anche se avete salvato “for-web” tutte le immagini, ImageOptim è in grado di comprimere ancora oltre il 50%. Alcuni files hanno un incredibile riduzione sino al  90%.

Sam ha processato tutte le immagini attraverso ImageOptim per ben due volte. La seconda volta è stato in grado di comprimere alcune immagini ancora più in profondità.
E’ importante notare che tutto questo è fatto in compressione lossless.

E’ possibile di rendere le immagini ancora più leggere con ImageAlpha (dai creatori di ImageOptim). Si tratta di uno strumento che permette di creare immagini con alpha PNG8 variabile.
Ciò farà risparmiare molto spazio. Si tratta di un processo più manuale rispetto a ImageOptim, ma funziona bene per ingrandire le immagini con alpha che non hanno un molti colori.

Nota: Assicuratevi di disattivare l’ottimizzazione delle immagini Xcode o si annullerà tutto il vostro duro lavoro, quando crerete il vostro bundle.

Conclusione

Abbiamo sentito pareri contrastanti su questi prodotti. Alcuni sostengono di aver avuto problemi con questi strumenti, mentre altri sono pienamente soddisfatti.
Secondo la nostra esperienza tutto funziona abbastanza bene;
se state cercando di ridurre la dimensione dell’app (bundle), raccomandiamo quindi di utilizzare questi strumenti.

Per i piu’ esperti:
Se si desidera provare a fare una compressione ancora più elevata, potete provare ad utilizzare il fork di Scribd del AdvanceCOMP di John Englehart (il creatore di JSONKit);
si tratta di un prodotto un po troppo hardcore, ma si consiglia comunque -ai piu’ smanettoni- di fare un tentativo.

3 commenti:

  1. fredericfishman

    Wow, incredible blog layout!
    you made blogging loo easy. The overall look of
    your web site is fantastic, as well as the content!

  2. Vi è uno strumento online per fare la stessa cosa.
    http://compresspng.com

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*