Android - работа с изображениями / камера - пара вопросов - PullRequest
3 голосов
/ 09 июля 2011

Я занимаюсь изменением размеров изображений на Android - весело!Вот вопросы, которые у меня, надеюсь, небольшие :) Я использую камеру, чтобы сделать снимок и сохранить его на SD-карте.

  1. Есть ли способ получить разрешение камеры, чтобы я знал разрешениеизображения и не нужно проверять его каждый раз при конвертации?

  2. Возможно ли изменить разрешение или оно зафиксировано для каждого устройства?

  3. Все ли изображения сохранены в "альбомном" формате?Я имею в виду, что они всегда "шире", чем "выше"?

  4. Если у меня есть ImageView на экране - как мне узнать, какой размер растрового изображения ему нужно для правильного заполнения?У меня есть 4 просмотра изображений подряд - все с одинаковым весом, поэтому я думаю, что мне нужно выбрать ширину экрана и соответствующим образом изменить размер растрового изображения?

  5. Если мне нужно масштабировать изображение до точной ширины -означает ли это, что мне нужно вычислить «отношение» от OldX к NewX и затем применить его к OldY перед вызовом Bitmap.createScaledBitmap?

1 Ответ

0 голосов
/ 09 июля 2011
  1. Вы ищете метод getSupportedPictureSizes (): http://developer.android.com/reference/android/hardware/Camera.Parameters.html#getSupportedPictureSizes(). И, когда у вас есть имена методов для поиска, есть множество примеров кода.

  2. Ответил 1.

  3. Вы можете либо использовать ориентацию, либо игнорировать ее, см. SetRotation на http://developer.android.com/reference/android/hardware/Camera.Parameters.html

  4. Вы можете просто вызвать getWidth () и getHeight () для изображений и изменить размеры растровых изображений, чтобы они соответствовали.

  5. Или вы можете установить scaleType для самого вида изображения на CENTER_INSIDE и просто добавить к нему растровое изображение, предполагая, что у вас уже есть растровое изображение. http://developer.android.com/reference/android/widget/ImageView.ScaleType.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...