2015-01-14 2 views
1

Я разрабатываю приложение для Android для съемки и замечаю, что соотношение размеров экрана (480/800 = 0,6 для моего HTC Desire X) не совпадает с разрешением изображения (1552/2592 = 0,5987) при съемке по умолчанию приложение Camera.The приложение имеет полноэкранный просмотр.Почему коэффициент разрешения экрана не совпадает с соотношением размеров экрана?

Кто-нибудь знает, почему существует эта крошечная разница? И как приложение по умолчанию обрабатывает эту дисперсию?

Спасибо!

+1

Почему * бы * камера обязательно имела такое же отношение, как экран ?! – Biffen

+0

Возможно, существует множество возможных разрешений изображения, которые могут быть сделаны камерой, используя API 'Camera'. Ни один из них не должен иметь соотношение сторон, соответствующее формату экрана. – CommonsWare

ответ

1

Когда вы инициализируете камеру, вы можете установить несколько различных параметров. Соответствующими на этот вопрос являются размер предварительного просмотра и размер изображения. Если вы используете стандартный метод съемки (метод takePicture()), размер будет установлен с использованием метода setPictureSize() для параметров камеры.

Размер предварительного просмотра (вы упомянули, что у вас есть полноэкранный просмотр) устанавливается независимо от размера изображения.

Чтобы установить размер предварительного просмотра, просмотрите supported preview sizes, а затем set the preview size.
Чтобы установить размер изображения, просмотрите supported picture sizes, а затем set the picture size.

+0

Спасибо за ваше предложение. Я фактически перебираю все размеры предварительного просмотра и размеры изображения и выбираю пару, имеющую «ближайшее» соотношение. Проблема выше скорее связана с отношением экрана (размерность), которое не совпадает с отношением предварительного просмотра и изображения. – Son

+0

Что-то тогда немного неясно в вашем вопросе. Итак, когда вы показываете картинку после ее взятия, она растягивается? Так как ваш образ немного «тоньше», чем ваш экран на равных высотах, я бы слегка масштабировал предварительный просмотр изображения, так что пропорции равны и с шириной равны. Это будет означать обрезку немного сверху и снизу при просмотре полноэкранного изображения. –

+0

Отображение изображения после того, как все в порядке, так как оно не занимает весь экран. Возможно, я могу установить размер предварительного просмотра в том же соотношении, что и экран, но я все еще думаю о «трюке», используемом приложением камеры по умолчанию, чтобы скрыть разницу в соотношении :). – Son