将图片上传到Facebook

时间:2010-11-16 22:06:51

标签: iphone objective-c facebook

我正在编写一个使用facebook-ios-sdk在Facebook上发布图片的应用程序,但每次上传图片时,我的相册都会显示错误的方向。这是我正在使用的代码,请注意我考虑了第二行的方向:

   ALAssetRepresentation *rep = [currentAsset defaultRepresentation];

    UIImage *img = [UIImage imageWithCGImage:[rep fullResolutionImage] scale:[rep scale] orientation:[rep orientation]];        


    NSMutableDictionary * params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                    img, @"picture",
                                    [pictureCaptionTextView text], @"caption",
                                    nil];

    [facebook requestWithMethodName: @"photos.upload"
                           andParams: params
                       andHttpMethod: @"POST"
                         andDelegate: self];

    [img release];

有谁知道发生了什么事?我上传时应该通过方向吗?

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用不同的照片,或者每次都在使用相同的图像进行测试?有时图像会有EXIF数据,告诉图像程序旋转它;它可能是Facebook正在尊重您的本地应用程序不是因此旋转的EXIF数据,或者可能是本地程序正在显示它已旋转且Facebook不是。

尝试在几种不同的浏览器中查看您的照片,甚至可以尝试从Facebook下载照片,然后重新上传=]

答案 1 :(得分:0)

感谢this link,我终于明白了这一点。

诀窍在于UIImageView会自动正确旋转图像,但原始数据始终处于默认的相机方向(横向,右上),因此您需要进行相应的调整。

奖励:如果需要,此方法会调整图像大小。