Android изображение из галереи намерений - PullRequest
1 голос
/ 02 января 2012

Почему, когда я загружаю изображение из галереи с намерением, это не поворачивается. Как будто просматривается через Галерею Android, которая вращается?

===========================================

Я решил таким образом :

int orientation=getOrientationImageFile();

    Canvas c=new Canvas(bmO);

    if(orientation!=0){
        Matrix matrix=new Matrix();
        matrix.setRotate(orientation);
        c.drawBitmap(bm, matrix, new Paint());

        bm=Bitmap.createBitmap(bmO, 0, 0, bmO.getWidth(), bmO.getHeight(), matrix, true);
    }

private int getOrientationImageFile() {
        String[] proj = { MediaStore.Images.Media.ORIENTATION };
        Cursor cursor = managedQuery(selectedImageUri, proj, null, null, null);
        int column_index = cursor
                .getColumnIndexOrThrow(MediaStore.Images.Media.ORIENTATION);
        cursor.moveToFirst();
        return cursor.getInt(column_index);
}

selectedImageUri - это ДАННЫЕ, возвращенные из намерения Галерея

bmO -битмап, созданный selectedImageUri

Я пытался и пытался, и это работает, но это решение, или это решение, которое может пойти? Есть другие лучшие решения?

1 Ответ

1 голос
/ 02 января 2012

Потому что приложение галереи Android сделает это за вас.Итак, вам нужно реализовать такую ​​вещь самостоятельно

Не волнуйтесь - это просто: Как программно обрезать и поворачивать изображение в Android?

...