2013-04-05 3 views
0

Мы изменяем размер фотографий, снятых камерой, до 1024x768 для загрузки. На большинстве Android-устройств наш код работает нормально, но на некоторых они этого не делают (например, Motorola Photon 4G, Galaxy Nexus, Motorola Droid X2).Как избежать пикселизации при изменении размера (сжатия) изображений на Android?

Мы используем код здесь: https://stackoverflow.com/a/9234895/679339

Но когда он не работает, то новое изображение выглядит следующим образом: pixalated

Кто-нибудь знает, почему?

+1

JPEG-артефакты? Что, если вы установите качество 100? –

+0

Привет, Роджер, не могли бы вы объяснить немного больше о том, что вы имеете в виду? Я довольно новичок в этом. Спасибо – dazhi

ответ

1

Android изменяет размер изображения, основанный на плотности пикселей устройства, в котором он работает. Вам нужно получить размер дисплея и плотность устройства, чтобы понять, что Android попытается сделать с вашей фотографией на основе просмотра его попытки поместить изображение в

+0

Спасибо. Итак, Galaxy Nexus - это, по-видимому, единственное устройство, у которого есть эта проблема. Как только мы получим размер и плотность дисплея, что мне с ним делать? – dazhi

+0

+ нет, это не просто Google Nexus. Это когда вы делаете изображение и управляете его размером с помощью JPEG. Это сжатие с потерями. Измените размер достаточно (и Nexus имеет красивую большую камеру относительно 1024x768), и вы потеряете достаточно информации, чтобы она выглядела плохо. – Martin

Смежные вопросы