В соответствии с документацией setRotation (90) должен вращать захваченное изображение в формате JPEG (takePicture в ландшафтном режиме.
Это отлично работает на телефоне HTC, но не работает на Samsung Nexus S и Samsung Galaxy S3. Это ошибка?
Я знаю, что могу использовать поворот матричного преобразования, но хочу, чтобы ОС могла сделать это более эффективно, и не хочу рисковать чрезмерно вращаться на некоторых других устройствах.
изменить
Настройка camera.setDisplayOrientation(90); сделала предварительный просмотр в портретном режиме, однако это не повлияло на сделанный снимок.
Кроме того, кроме setRotation, я также попытался установить размер изображения, где я переворачиваю h с помощью w: parameters.setPictureSize(1200, 1600);. Это также не повлияло.
Решение
По-видимому, телефоны Samsung устанавливают тег ориентации EXIF, а не вращают отдельные пиксели. Как предлагалось ariefbayu, чтение битмапа с использованием BitmapFactory не поддерживает этот тег. Его образ кода является решением, и это решение также совместимо с использованием inSampleSize.
