第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Android中的相機方向問題

Android中的相機方向問題

吃雞游戲 2019-12-10 10:50:10
我正在構建一個使用相機拍照的應用程序。這是我執(zhí)行此操作的源代碼:        File file = new File(Environment.getExternalStorageDirectory(),            imageFileName);    imageFilePath = file.getPath();    Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");    //Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);    intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file));    startActivityForResult(intent, ACTIVITY_NATIVE_CAMERA_AQUIRE);在onActivityResult()方法上,我BitmapFactory.decodeStream()用來拾取圖像。當我在Nexus One上運行我的應用程序時,它運行良好。但是,當我在Samsung Galaxy S或HTC Inspire 4G上運行時,圖像的方向不正確。使用人像模式拍攝時,真實圖像(保存在SD卡上)始終旋轉90度。拍攝后的圖像預覽 SD卡上的真實圖像拍攝后的圖像預覽--------- SD卡上的真實圖像使用風景模式拍攝時,一切都很好。拍攝后的圖像預覽 SD卡上的真實圖像拍攝后的圖像預覽--------- SD卡上的真實圖像
查看完整描述

3 回答

?
千萬里不及你

TA貢獻1784條經(jīng)驗 獲得超9個贊

這里有很多類似的主題和問題。由于您不是在編寫自己的相機,因此我認為可以歸結為:


一些設備在保存圖像之前先旋轉圖像,而其他設備只是在照片的exif數(shù)據(jù)中添加方向標簽。


我建議檢查照片的exif數(shù)據(jù),并特別尋找


ExifInterface exif = new ExifInterface(SourceFileName);     //Since API Level 5

String exifOrientation = exif.getAttribute(ExifInterface.TAG_ORIENTATION);

由于照片在您的應用程序中正確顯示,因此我不確定問題出在哪里,但這絕對可以使您走上正確的道路!


查看完整回答
反對 回復 2019-12-10
?
寶慕林4294392

TA貢獻2021條經(jīng)驗 獲得超8個贊

我剛剛遇到了相同的問題,并使用它來糾正方向:


public void fixOrientation() {

    if (mBitmap.getWidth() > mBitmap.getHeight()) {

        Matrix matrix = new Matrix();

        matrix.postRotate(90);

        mBitmap = Bitmap.createBitmap(mBitmap , 0, 0, mBitmap.getWidth(), mBitmap.getHeight(), matrix, true);

    }

}

如果位圖的寬度大于高度,則返回的圖像為橫向,因此我將其旋轉90度。


希望它對這個問題有幫助。


查看完整回答
反對 回復 2019-12-10
?
ITMISS

TA貢獻1871條經(jīng)驗 獲得超8個贊

需要兩件事:


相機預覽需要與旋轉相同。設置這個camera.setDisplayOrientation(result);


將捕獲的圖片保存為相機預覽。通過執(zhí)行此操作Camera.Parameters。


int mRotation = getCameraDisplayOrientation();


Camera.Parameters parameters = camera.getParameters();


parameters.setRotation(mRotation); //set rotation to save the picture


camera.setDisplayOrientation(result); //set the rotation for preview camera


camera.setParameters(parameters);

希望能有所幫助。


查看完整回答
反對 回復 2019-12-10
  • 3 回答
  • 0 關注
  • 502 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號