Якщо вам абсолютно потрібен альфа-канал або вам потрібно перейти з PNG, тоді доцільно встановити інструмент pngcrush на ваш веб-сервер і дозволити йому обробити всі ваші PNG. Майже у всіх інших випадках високоякісні JPEG поєднують менші розміри файлів (тобто більш швидку передачу) з більш швидким стисненням та рендерінгом.
Виявляється, що PNG чудово підходять для невеликих зображень, які ви використовували б для елементів інтерфейсу, але їх не доцільно використовувати для будь-яких додатків на повний екран, таких як каталоги чи журнали. Там ви хочете вибрати якість стиснення від 60 до 80% залежно від вихідного матеріалу.
З точки зору того, щоб все це відображалося, ви захочете повісити на екземпляри UIImage, з яких ви намалювали один раз, оскільки в них є кешована нестиснена версія файлу. І якщо ви не зробите візуальну паузу, щоб велике зображення з’явилося на екрані, вам доведеться заздалегідь примусити декомпресію для декількох зображень. Але майте на увазі, що для цього буде потрібно велика кількість оперативної пам’яті, і якщо ви перестараєтеся, це може призвести до припинення роботи програми. NSCache - це прекрасне місце для розміщення часто використовуваних зображень, оскільки це автоматично переймається видаленням зображень, коли оперативної пам'яті стає дефіцитною.
Прикро, що у нас немає жодного способу дізнатись, чи потрібно все-таки зображення розпаковувати чи ні. Також зображення, можливо, видалить нестиснену версію, не повідомивши нас про це. Це може бути хорошим радіолокатором, який можна підняти на сайті звітів про помилки Apple. Але, на щастя, доступ до зображення, як показано вище, не потребує часу, якщо зображення вже декомпресується. Тож ви могли просто зробити це не тільки «просто вчасно», але і «про всяк випадок».