Sto usando UIImagePNGRepresentation
per salvare un'immagine. L'immagine del risultato è di dimensioni 30+ KB e questo è GRANDE nel mio caso.Come comprimere le dimensioni dell'immagine usando UIImagePNGRepresentation - iOS?
Ho provato ad utilizzare UIImageJPEGRepresentation
e permette di comprimere l'immagine, in modo da immagine salva in formato < 5 KB, che è grande, ma salvandolo in formato JPEG dà lo sfondo bianco, che non voglio (la mia immagine è circolare, così Ho bisogno di salvarlo con uno sfondo trasparente).
Come posso comprimere le dimensioni dell'immagine, utilizzando UIImagePNGRepresentation
?
La semplice risposta è che non è possibile, fino a quando si sceglie di compromettere la vostra dimensione dell'immagine. 'UIImagePNGRepresentation' restituisce la dimensione compressa minima possibile per l'immagine e, trattandosi di un metodo di compressione senza perdita, non può compromettere la qualità dell'immagine, a differenza di JPEG. Quindi, solo la possibilità è di ridurre la dimensione dell'immagine. –
@AyanSengupta Non è proprio vero, ci sono molti modi in cui un'immagine PNG può ottenere una compressione migliore (diverse impostazioni di gonfiatura, diverse impostazioni utilizzate, una tavolozza) ma per scegliere la migliore, dovremmo provarli tutti. Esistono strumenti speciali per ottimizzare le immagini PNG, ma non possiamo aspettarci un semplice codificatore grafico per farlo. – Sulthan
Se l'immagine non ha molti colori, si può andare con PNG-8 (PNG con una tavolozza di colori 256) che di solito è più piccola. Potrebbe essere difficile forzare UIImagePNGRepresentation a produrre tale formato, quindi potresti provare a convertire 'UIImage' in dati rgb e quindi provare un codificatore PNG diverso, ad es. libpng. Alla fine tutto dipende dall'immagine che hai. – Sulthan