2016-03-19 5 views
0

私はアンドロイドでカメラから画像をキャプチャし、画像を外部ディレクトリに保存していますが、付属の画像に示されているように斜めに傾いています。なぜこれが起こっているのか分かりません。私のデバイスでもテストしていますが、問題は再現されていません。しかし、私のクライアントはこの問題を提起しています。 enter image description hereディレクトリに画像を保存するとある角度に傾く

答えて

0

Camera.CameraInfo info = new Camera.CameraInfo();

Camera.getCameraInfo(Camera.CameraInfo.CAMERA_FACING_BACK、info);

int rotation = mActivity.getWindowManager()。getDefaultDisplay()。getRotation(); int degrees = 0;

スイッチ(回転){

case Surface.ROTATION_0: degrees = 0; break; //Natural orientation 
    case Surface.ROTATION_90: degrees = 90; break; //Landscape left 
    case Surface.ROTATION_180: degrees = 180; break;//Upside down 
    case Surface.ROTATION_270: degrees = 270; break;//Landscape right 
} 

INTが回転=(info.orientation - 度+ 360)%360。

Camera.Parameters params = mCamera.getParameters();

params.setRotation(rotate);

mCamera.setParameters(params);

あなたの解決策は、すでに記録された後に画像を修正するので、回避策のようなものです。このソリューションはよりクリーンでイメージを保存する前にこれらの 'if'ステートメントをすべて必要としません。

+0

しかし、これは90度または90度回転の倍数ではありません。私はオリエンテーションのためにそのようなローテーションを認識していますが、これは私には予想外のことです。さて、私はこれを試してみます。返信ありがとう。 –

関連する問題