CopyPastor

Detecting plagiarism made easy.

Score: 0.8295699954032898; Reported for: String similarity Open both answers

Possible Plagiarism

Plagiarized on 2020-09-22
by Felix Favour Chinemerem

Original Post

Original - Posted on 2012-12-28
by Jason Robinson



            
Present in both answers; Present only in the new answer; Present only in the old answer;

> Most phone cameras are landscape, meaning if you take the photo in > portrait, the resulting photos will be rotated 90 degrees. In this > case, the camera software should populate the Exif data with the > orientation that the photo should be viewed in. > > Note that the below solution depends on the camera software/device > manufacturer populating the Exif data, so it will work in most cases, > but it is not a 100% reliable solution.
ExifInterface ei = new ExifInterface(photoPath); int orientation = ei.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_UNDEFINED); Bitmap rotatedBitmap = null; switch(orientation) { case ExifInterface.ORIENTATION_ROTATE_90: rotatedBitmap = rotateImage(bitmap, 90); break; case ExifInterface.ORIENTATION_ROTATE_180: rotatedBitmap = rotateImage(bitmap, 180); break; case ExifInterface.ORIENTATION_ROTATE_270: rotatedBitmap = rotateImage(bitmap, 270); break; case ExifInterface.ORIENTATION_NORMAL: default: rotatedBitmap = bitmap; }
> For the `rotateImage` method
public static Bitmap rotateImage(Bitmap source, float angle) { Matrix matrix = new Matrix(); matrix.postRotate(angle); return Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true); }
Most phone cameras are landscape, meaning if you take the photo in portrait, the resulting photos will be rotated 90 degrees. In this case, the camera software should populate the [Exif][1] data with the orientation that the photo should be viewed in.
Note that the below solution depends on the camera software/device manufacturer populating the Exif data, so it will work in most cases, but it is not a 100% reliable solution.
ExifInterface ei = new ExifInterface(photoPath); int orientation = ei.getAttributeInt(ExifInterface.TAG_ORIENTATION, ExifInterface.ORIENTATION_UNDEFINED);
Bitmap rotatedBitmap = null; switch(orientation) {
case ExifInterface.ORIENTATION_ROTATE_90: rotatedBitmap = rotateImage(bitmap, 90); break;
case ExifInterface.ORIENTATION_ROTATE_180: rotatedBitmap = rotateImage(bitmap, 180); break;
case ExifInterface.ORIENTATION_ROTATE_270: rotatedBitmap = rotateImage(bitmap, 270); break;
case ExifInterface.ORIENTATION_NORMAL: default: rotatedBitmap = bitmap; }
Here is the `rotateImage` method:
public static Bitmap rotateImage(Bitmap source, float angle) { Matrix matrix = new Matrix(); matrix.postRotate(angle); return Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true); }
[1]: https://en.wikipedia.org/wiki/Exif




        
Present in both answers; Present only in the new answer; Present only in the old answer;