2011-08-02 4 views
0

오늘이 주제에 대한 두 번째 질문은 있지만 이전 질문에서 나는 충분히 명확하지 않은 것 같습니다.이미지의 방향을 설정하는 데 문제가 있습니다.

나는 사진을 찍기 위해 카메라를 직접 만들고있다. 내가 좋아하는 뭔가를하고있어이 활동의 ​​onCreate() 방법에서 :

this.setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); 

그렇지 않으면 내 모든 화면은 다음과 같습니다 .Anyway이 순간 내 문제를 해결하고 이미지가 좋은 찾고있다.

사진을 찍은 후에는 번들을 사용하여 이미지를 다른 활동 (활동 B)으로 보내 이미지를 편집 한 다음 이미지를 웹 사이트에 저장합니다. 이 활동에서받은 사진은 여기에 다시 같은 잘못을 지향한다 : 여기

그리고

문제입니다! [1] 난 단지에, 이미지 자체에 따라 어떤 작업을 수행하지 않았기 때문에 [여기 이미지 설명을 입력합니다] 활동 방향.

이제는 동일한 작업을 수행하고 LANDSCAPE 모드에서 활동을 설정하면 내 활동이 좋아질 것입니다.하지만 웹 사이트에 이미지를 업로드하면 더 이상 웹 사이트에서 잘못 보입니다. 내가 그녀 자신의 orietntation을 설정하는 데 아무 것도하지 않았다는 단순한 사실 때문입니다. 내 surfaceChanged()에 따라서

- activity A에서, 첫 번째는, 방법이 같은 짓을 한 :하지만이 이미지에 영향을주지 않습니다

Camera.Parameters p = mCamera.getParameters(); 
p.set("orientation", "landscape"); 
p.setRotation(90); 
mCamera.setParameters(p); 

, 그것은 같은 보인다.

저는 Sony Ericsson에서 작업 중이며 이미지를 회전하는 데 도움이 필요합니다. orientation of my activity을 설정하지 마십시오! 내가 이미지를 가지고있어 activity A에서 내가이 일을 해요 :

편집 내가 더 details.Thanks

여기 있어요, 감사

Camera.PictureCallback mPictureCallback = new Camera.PictureCallback(){ 
     public void onPictureTaken(byte[] imageData, Camera c) { 

      if (imageData != null) { 

       Intent mIntent = new Intent(); 

       //StoreByteImage(mContext, imageData, 50, "ImageName"); 
       mCamera.startPreview(); 

       Bundle b = new Bundle(); 
       b.putByteArray("imageData", imageData); 
       Intent i = new Intent(mContext,ImageDisplayActivity.class); 
       i.putExtras(b); 
       startActivity(i); 

       setResult(FOTO_MODE, mIntent); 
       finish(); 

      } 
     } 
    }; 

그리고 activity B의를 어디 이미지 수신 중이 작업을 수행하고 있습니다.

Bundle extras = getIntent().getExtras(); 
BitmapFactory.Options options=new BitmapFactory.Options(); 
     options.inSampleSize = 5; 
     byte[] imageData = extras.getByteArray("imageData"); 
     Bitmap myImage = BitmapFactory.decodeByteArray(imageData , 0, imageData.length,options); 
....///is set up the bitmap to an imageview 
+0

를 찾을 수'나는 번들을 사용하고 있는데 다른 이미지를 전송 액티비티 (액티비티 B)''bundle '코드를 보자. –

+0

사실 내가 알고 싶은 것은 이미지가 비트 맵인가? –

+0

내 편집 좀 봐 ... :) – adrian

답변

2

좋아요. 문제가 너무 많아요.

시도 내가이 문제입니다 확신 다른 각도를 시도

Matrix mat = new Matrix(); 
mat.postRotate(90); 
image_to_upload = Bitmap.createBitmap(myImage, 0, 0, myImage.getWidth(), myImage.getHeight(), mat, true); 

을 업로드하기 전에 myImage를 회전하고 당신은 옳은 길을

+0

나는 그것을 과대 평가할 수도 있지만 더 이상 가져갈 수있다. 내 게시물은 조금 극적으로 들릴지 모르지만, 일단 작동하면 그걸 극복 할 것이다! – adrian

+0

제안을 해 주셨습니까? –

+0

예, 작동 중입니다. D ...하지만 다른 문제에 직면하고 있습니다. 전체 화면으로 보일 수는 없습니다. – adrian

관련 문제