mirror of
https://github.com/NativeScript/NativeScript.git
synced 2025-08-15 19:26:42 +08:00
fixed image rotation
This commit is contained in:
@ -63,6 +63,21 @@ export var takePicture = function (options?): Promise<any> {
|
|||||||
scaledSizeImage = bitmap;
|
scaledSizeImage = bitmap;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var ei = new android.media.ExifInterface(tempPicturePath);
|
||||||
|
var orientation = ei.getAttributeInt(android.media.ExifInterface.TAG_ORIENTATION, android.media.ExifInterface.ORIENTATION_NORMAL);
|
||||||
|
|
||||||
|
switch (orientation) {
|
||||||
|
case android.media.ExifInterface.ORIENTATION_ROTATE_90:
|
||||||
|
scaledSizeImage = rotateBitmap(scaledSizeImage, 90);
|
||||||
|
break;
|
||||||
|
case android.media.ExifInterface.ORIENTATION_ROTATE_180:
|
||||||
|
scaledSizeImage = rotateBitmap(scaledSizeImage, 180);
|
||||||
|
break;
|
||||||
|
case android.media.ExifInterface.ORIENTATION_ROTATE_270:
|
||||||
|
scaledSizeImage = rotateBitmap(scaledSizeImage, 270);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
var imageSource: typeof imageSourceModule = require("image-source");
|
var imageSource: typeof imageSourceModule = require("image-source");
|
||||||
|
|
||||||
resolve(imageSource.fromNativeSource(scaledSizeImage));
|
resolve(imageSource.fromNativeSource(scaledSizeImage));
|
||||||
@ -103,3 +118,9 @@ var createDateTimeStamp = function () {
|
|||||||
date.getSeconds().toString();
|
date.getSeconds().toString();
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var rotateBitmap = function (source, angle) {
|
||||||
|
var matrix = new android.graphics.Matrix();
|
||||||
|
matrix.postRotate(angle);
|
||||||
|
return android.graphics.Bitmap.createBitmap(source, 0, 0, source.getWidth(), source.getHeight(), matrix, true);
|
||||||
|
}
|
Reference in New Issue
Block a user