Announcement

Collapse
No announcement yet.

Bild nach Kameraaufnahme in die Aufnahme Position drehen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Bild nach Kameraaufnahme in die Aufnahme Position drehen

    Hi

    ich hab ne Frage:
    Wenn ich ein Bild im Querformat aufnehme und es mir anzeigen lasse, wird dieses auch im Querformat angezeigt.
    Wenn ich es aber im Hochformat aufnehme wird es mir immer um 270 Grad gedreht und auch im Querformat angezeigt.

    Kann mir jemand erklären wie ich das Hochformat Bild auch im Hochformat anzeigen kann ?
    Zur Anzeige nutze ich ein ImageView.

    thx Kaladial

  • #2
    https://www.google.com/search?client...90+grad+drehen
    Christian

    Comment


    • #3
      Hi

      ok das drehen an sich ist nicht das problem, da hab ich mittlerweile diverse versionen gefunden ...
      ich hab jetzt eher das problem, das ich auch ne funktionierende Version hab, die aber erst ab android build version 29 funktioniert (Android 10)
      ich würde die trotzdem gerne nutzen, und wenn die leute ne ältere version haben bekommen sie die bilder halt nicht gedreht angezeigt .

      ich bin grad eher dabei rauszufinden, wie ich zur laufzeit raus bekomme welche buildversion das verwendete handy hat, damit ich das entscheiden kann.

      mein code den ich benutzen will ist der hier:
      Code:
          @RequiresApi(api = Build.VERSION_CODES.Q)
          private void rotateImage(Bitmap bmp)
          {
              ExifInterface exifInterface = null;
              try
              {
                  exifInterface = new ExifInterface(FKZRechnungBild);
              } catch (IOException e) {
                  e.printStackTrace();
              }
              int orientation = exifInterface.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_UNDEFINED);
              Matrix matrix = new Matrix();
              switch(orientation){
                  case ExifInterface.ORIENTATION_ROTATE_90:
                      matrix.setRotate(90);
                      break;
                  case ExifInterface.ORIENTATION_ROTATE_180:
                      matrix.setRotate(180);
                      break;
                  case ExifInterface.ORIENTATION_ROTATE_270:
                      matrix.setRotate(270);
                      break;
                  default:
              }
              Bitmap rotatedBitmap = Bitmap.createBitmap(bmp, 0,0, bmp.getWidth(), bmp.getHeight(), matrix, true);
              ivBild.setImageBitmap(rotatedBitmap);
          }

      Comment

      Working...
      X