2015-12-29 2 views
1

Я использую Fresco для загрузки изображений из памяти телефона с помощью uri в SimpleDraweeView (как внутренние, так и внешние, используя контент-провайдер - 'content: //'). Они загружаются отлично, но продолжают вращаться, если у них есть ориентация, установленная в их свойствах. Я попытался установить imageRequest с свойством .setAutoRotateEnabled (true), но по какой-то причине он не работает для меня. Любые предложения о том, как поворачивать изображения, чтобы отображать их правильно?Android: как повернуть изображение с помощью Fresco

imageView.setController(
      controllerBuilder 
        .setOldController(imageView.getController()) 
        .setImageRequest(imageRequestBuilder 
          .setSource(uri) 
          .setAutoRotateEnabled(true) 
          .setResizeOptions(null) 
          .build()) 
        .build()); 

ответ

3

У меня была эта проблема решена установкой .setDownsampleEnabled (false). Я не знаю, почему, но я думаю, что понижающая дискретизация ДЕЙСТВИТЕЛЬНО экспериментальна и предотвращает автоматическое вращение.

+0

Да, у меня есть одна и та же проблема ~ –

+0

Я открыл проблему в Fresco github об этой проблеме, и они сказали, что они когда-нибудь ее исправит (: Надеюсь, что откат от вас поможет. – aleien

1

Автоповорот по умолчанию, поэтому изображение будет вращаться, если ориентация установлена. Попробуйте установить значение false, если это не то, что вы хотите.

1

У меня также была такая же проблема, когда включение понижающей дискретизации, включенное в Fresco, предотвращает возможность отключения автоматического поворота изображений с данными EXIF.

Об этом недавно открыл issue, а также тот факт, что автоматическое вращение включено по умолчанию, но это нигде не документировано, что вызвало у меня часы царапин на голове. Пока нет ответа от разработчиков Fresco.

EDIT: проблема теперь исправлена ​​в Fresco v0.14.

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