FazBrowse GitHub Viewer | Trending |
URL:
| Home
Tools: [Download Repo ZIP]   [Original HTTPS Page]

Merge pull request #1635 from NativeScript/camera-rotate · NativeScript/NativeScript@6bade87 · GitHub

Repository navigation

Commit 6bade87

Browse files
Vladimir Enchev
committed
Merge pull request #1635 from NativeScript/camera-rotate
fixed image rotation
2 parents 52c8e53 + 0855bf5 commit 6bade87

1 file changed

Lines changed: 21 additions & 0 deletions

File tree

‎camera/camera.android.ts‎

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,21 @@ export var takePicture = function (options?): Promise<any> {
6363
scaledSizeImage = bitmap;
6464
}
6565

66+
var ei = new android.media.ExifInterface(tempPicturePath);
67+
var orientation = ei.getAttributeInt(android.media.ExifInterface.TAG_ORIENTATION, android.media.ExifInterface.ORIENTATION_NORMAL);
68+
69+
switch (orientation) {
70+
case android.media.ExifInterface.ORIENTATION_ROTATE_90:
71+
scaledSizeImage = rotateBitmap(scaledSizeImage, 90);
72+
break;
73+
case android.media.ExifInterface.ORIENTATION_ROTATE_180:
74+
scaledSizeImage = rotateBitmap(scaledSizeImage, 180);
75+
break;
76+
case android.media.ExifInterface.ORIENTATION_ROTATE_270:
77+
scaledSizeImage = rotateBitmap(scaledSizeImage, 270);
78+
break;
79+
}
80+
6681
var imageSource: typeof imageSourceModule = require("image-source");
6782

6883
resolve(imageSource.fromNativeSource(scaledSizeImage));
@@ -102,4 +117,10 @@ var createDateTimeStamp = function () {
102117
date.getMinutes().toString() +
103118
date.getSeconds().toString();
104119
return result;
120+
}
121+
122+
var rotateBitmap = function (source, angle) {
123+
var matrix = new android.graphics.Matrix();
124+
matrix.postRotate(angle);
125+
return android.graphics.Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true);
105126
}

0 commit comments

Comments
 (0)

Back | FazBrowse Home | New Git URL