Как исправить TextureView.getBitmap () в альбомной ориентации на Android Java Camera2API? - PullRequest
0 голосов
/ 05 июня 2019

Я пытаюсь сохранить растровое изображение из TextureView, вызвав функцию getBitmap () для объекта, это прекрасно работает в портретном режиме.Но при переходе в ландшафтный режим возникает проблема: заданное растровое изображение не совпадает с предварительным просмотром на экране (похоже, что при просмотре текстуры растровые изображения растягиваются в ландшафтный режим, но в портретном режиме захватывается сцена)..

Я пытался с измененным ImageSaver на основе примера Camera2Basic из Google Sample.Тестирующими устройствами являются Lenovo, Samsung и Mi.Все устройства имеют эту проблему, поэтому я заключаю, что что-то не так с кодом.По сути, я сделал сохранение изображения непосредственно из Camera Capture в кнопке, и все, что я хочу сделать, это сохранить текущий снимок экрана предварительного просмотра (разрешение на основе экрана дисплея, а не разрешение камеры, так как разрешение устройства может отличаться от разрешения камеры), когда я нажимаю другойКнопка.

Bitmap viewBitmap = mTextureView.getBitmap();
output = new FileOutputStream(mFile);
viewBitmap.compress(Bitmap.CompressFormat.JPEG, 100, output);
output.close();

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

...