2012-06-20 16 views
0

사진을 페이스 북에 업로드합니다. 사진 너비> 높이 인 경우 모든 사항이 정상입니다. 높이> 너비라면 페이스 북에 사진이 표시되므로 페이스 북 계정 사진의 너비가 높이로 표시되지만 (물론) 방향은 틀립니다. 내 코드 :사진을 Facebook 문제로 업로드하십시오. 틀린 사진 오리엔테이션

나는 완전히로 이미지 크기를 확인 postImageToFaceBook에서
- (void)postImageToFaceBook:(UIImage *)imgSource 
{ 
    [self login]; 

    currentAPICall = kAPIGraphUserPhotosPost; 

    NSString *strMessage = @"This is the photo caption"; 
    NSMutableDictionary* photosParams = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
             imgSource,@"source", 
             strMessage,@"message", 
             nil]; 

    NSLog(@"Begin sending photo\n\n"); 
    [_facebook requestWithGraphPath:@"me/photos" 
          andParams:photosParams 
         andHttpMethod:@"POST" 
         andDelegate:self]; 
} 

- (void)login 
{ 
    if (![_facebook isSessionValid]) { 
     NSArray *permissions = [[NSArray alloc] initWithObjects: 
           @"user_photos", 
           nil]; 
     [_facebook authorize:permissions]; 
     [permissions release]; 
    } 
} 

- (void)logout 
{ 
    [_facebook logout]; 
} 


#pragma mark - FBRequestDelegate 

- (void)request:(FBRequest *)request didLoad:(id)result { 
    NSLog(@"Request load\n\n"); 
    [self hideHud]; 

    if ([result isKindOfClass:[NSArray class]] && ([result count] > 0)) { 
     result = [result objectAtIndex:0]; 
    } 

    switch (currentAPICall) { 
     case kAPIGraphPhotoData: // step 3 
     { 
      NSLog(@"sending to wall\n\n"); 
      // Facebook doesn't allow linking to images on fbcdn.net. So for now use default thumb stored on Picasa 

      NSString *thumbURL = kDefaultThumbURL; 
      NSString *imageLink = [NSString stringWithFormat:[result objectForKey:@"link"]];  

      currentAPICall = kDialogFeedUser; 


      NSMutableDictionary* dialogParams = [NSMutableDictionary dictionaryWithObjectsAndKeys: 
               kAppId, @"app_id", 
               imageLink, @"link", 
               thumbURL, @"picture", 
               @"Photo from my iPhone application", @"name", 
               @"The app", @"caption", 
               @"it is fun to use", @"description", 
               nil]; 

      [_facebook dialog:@"feed" 
        andParams:dialogParams 
        andDelegate:self]; 


      break; 
     } 
     case kAPIGraphUserPhotosPost: // step 2 
     { 
      NSLog(@"getting data\n\n"); 
      [self showHudWithMessage:@"Getting image data"]; 
      NSString *imageID = [NSString stringWithFormat:[result objectForKey:@"id"]];    
      NSLog(@"id of uploaded screen image %@",imageID); 

      currentAPICall = kAPIGraphPhotoData; 

      [_facebook requestWithGraphPath:imageID 
           andDelegate:self]; 

      break; 
     } 
     default: 
      break; 
    } 
} 


#pragma mark - FBDialogDelegate 

- (void)dialogDidComplete:(FBDialog *)dialog { 
    switch (currentAPICall) { 
     case kDialogFeedUser: 
     { 
      NSLog(@"Feed published successfully."); 
     } 
      break; 
     default: 
      break; 
    } 
} 

는 슈어 내 이미지 폭 < 높이가. 너비는 약 2200, 높이는 3300이며 페이스 북 앨범 이미지는 너비> 높이로 나타납니다.

미리 감사드립니다.

+0

사진의 Exif 태그가 원인인지 확인 했습니까? –

답변

0

나는이 문제를 해결했다. 이 동작은 이미지의 폭이 약 2000 픽셀이지만 폭이 1000 픽셀 미만이면 모든 것이 정상입니다.

0

실제로 이미지에서는 아무 것도하지 않습니다. iPhone은 Portrait 모드의 모든 이미지를 가로 모드로 표시합니다. 시스템의 이미지를 확인하십시오.

감사합니다.

+0

아니요, postImageToFaceBook에서 이미지 크기를 확인했는데 너비는 약 2200, 높이는 3300이며 facebook 앨범 이미지는 너비> 높이로 나타납니다. 게시판을 업데이트했습니다. –

+0

시스템에서 이미지를 확인 했습니까? 며칠 전 Bcoz도 같은 문제에 직면했습니다. fb에 이미지를 업로드하기 전에 이미지 크기를 변경하지 않았는지 확인하십시오. –

+0

너비가 약 2200인지 확인한 후 높이가 3300이고 이미지 크기를 조정하지 않았습니다. "당신 시스템에서 이미지를 확인 했습니까?"라는 것은 무엇을 의미합니까? 전에 말했듯이 이미지 크기를 확인한 후 보냈습니다. –