2015-08-29 2 views
1

У меня есть проблемы с памятью с моим приложением. Он может отображать изображение из личной галереи пользователя и хранить его в файле, который будет отображаться на экране. Проблема в том, что ограничение на изображение очень мало. Я обнаружил, что почти все изображения на моем устройстве являются большими для обработки. Таким образом, сам метод стал бесполезным, поскольку он не может обрабатывать изображения среднего размера. До сих пор я испытываю это только на устройствах ios.Сжатие изображений во время выполнения

Есть ли решение? Могу ли я сжимать/минимизировать размер изображения на меньший? Разрезать все изображения на одно и то же разрешение? (Как система Instagram).

ответ

0

Если вы хотите, чтобы уменьшить размер изображения в байтах, есть по крайней мере 3 области вы можете работать на:

  1. уменьшить размеры изображения (разрешение пикселей). Это почти всегда приводит к потере качества, но если ваши пользователи просматривают на небольших устройствах экрана , и вы не слишком сильно изменяете размер, то потеря не будет . Вы также можете использовать интерполяцию для минимизации визуального деградации при изменении размера.
  2. Уменьшить глубину цвета (разрешение цвета). Если изображение полноцветное (32 или 24 бит на пиксель), вы можете иногда уйти с уменьшением его до более низкого значения цвета, например, сделать его 8-битным. Опять же, это приведет к потере качества, но вы можете использовать сглаживание, чтобы уменьшить его.
  3. Используйте лучшее сжатие. Большинство изображений уже сжаты в эти дни, но в некоторых случаях вы можете повторно сжать изображение, чтобы уменьшить размер файла. Одним из примеров является JPEG, который поддерживает различные факторы качества. В JPEG также есть разные подтипы (частоты дискретизации цвета). Поэтому, если вы сохраните изображение как 4: 1: 1 вместо 4: 4: 4, оно будет содержать меньше содержимого цвета и уменьшится в размере байта, но разница обычно не , заметная для человеческого глаза. Это post имеет информацию об изменении JPEG Коэффициент качества на iOS.
Смежные вопросы