2016-02-20 2 views
0

Я пытаюсь повернуть растровое изображение в Android с помощью следующей функции, изображение искажается с некоторыми градусами, например 70, как я могу поворачивать изображение, не искажая его в какой-либо степени?Повернуть растровое изображение - Android

public Bitmap rotateBitmap (Bitmap bm, int degree) { 
    Matrix matrix = new Matrix(); 
    matrix.setRotate(degree, bm.getWidth()/2, bm.getHeight()/2); 

    return Bitmap.createBitmap(bm, 0, 0, bm.getWidth(), bm.getHeight(), matrix, true); 


} 
+0

Пожалуйста, загрузите некоторые скриншоты imgur.com и вставить ссылки (или встраивать с '! 'тег) в вашем вопросе. Таким образом, мы можем видеть, о чем вы говорите. – selbie

ответ

0

Здравствуйте, используйте эту функцию!

public static Bitmap RotateBitmap(Bitmap source, float angle) { 
     Matrix matrix = new Matrix(); 
     matrix.postRotate(angle); 
     return Bitmap.createBitmap(source, 0, 0, source.getWidth(), 
       source.getHeight(), matrix, true); 
    } 

Вы можете использовать эту функцию, как это:

Bitmap bmp : RotateBitmap(b,90); 

Надеется, что это работает для вас :)

+0

Я пробовал это раньше, он не работает. –

+0

для меня это работает очень хорошо! –

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