我需要從facebook圖形API獲得100x100方形圖片。圖片必須像標準方形「50x50」圖片一樣,但尺寸必須爲100x100。謝謝!如何從facebook圖形API獲得100x100方形圖片?
回答
的圖形API僅*提供下列尺寸(與所述類型參數指定圖片大小):
平方:50x50像素
小:50個像素寬,可變高度
正常:100像素寬,可變高度
大:約200像素寬,可變高度
如果你想要的形象是100×100,你就必須獲取「正常」的大小和裁剪自己,例如如果你正在使用PHP檢查imagecopyresampled功能
* UPDATE:
正如下面的評論中指出,這個答案是正確的在2012年5月,但現在你也可以選擇使用以獲得不同尺寸的選項graph.facebook.com/ UID
/照片?寬度= N
&高度= N
,如在從傑里米更近的答案描述。
- (UIImage *)imageWithImage:(UIImage *)image scaledToSize:(CGSize)newSize {
//UIGraphicsBeginImageContext(newSize);
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
[image drawInRect:CGRectMake(0, 0, newSize.width, newSize.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return newImage;
}
- (UIImage *)crop:(CGRect)rect andIm:(UIImage*) im {
CGFloat scale = [[UIScreen mainScreen] scale];
if (scale>1.0) {
rect = CGRectMake(rect.origin.x*scale , rect.origin.y*scale, rect.size.width*scale, rect.size.height*scale);
}
CGImageRef imageRef = CGImageCreateWithImageInRect([im CGImage], rect);
UIImage *result = [UIImage imageWithCGImage:imageRef];
CGImageRelease(imageRef);
return result;
}
-(UIImage*)squareLargeFacebookProfilePhoto:(UIImage*) image{
float startPosX=0.0;
float startPosY=0.0;
float newsizeW;
float newsizeH;
if (image.size.height>=image.size.width){
newsizeW=200;
float diff=200-image.size.width;
newsizeH=image.size.height+diff/image.size.width*image.size.height;
if (newsizeH>200){
startPosY=(newsizeH-200.0)/8.0;
}
}
else
{
newsizeH=200;
float diff=200-image.size.height;
newsizeW=image.size.width+diff/image.size.height*image.size.width;
if (newsizeW>200){
startPosX=(newsizeW-200.0)/2.0;
}
}
UIImage *imresized=[self imageWithImage:image scaledToSize:CGSizeMake(newsizeW, newsizeH)];
return [self crop:CGRectMake(startPosX, startPosY, 200, 200) andIm:imresized];
}
的URL https://graph.facebook.com/user_id/picture?type=square給了我們一個小 資料圖片(50×50)
1)你必須從網址下載圖像首先:
https://graph.facebook.com/user_id/picture?type=large
例如加載圖片
NSURL * imageURL = [NSURL URLWithString:https://graph.facebook.com/user_id/picture?type=large];
NSData * imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage *image = [UIImage imageWithData:imageData];
2)然後,只需調用返回的大小大的Facebook個人資料圖片(200×200)的功能:
UIImage *LargeProfileImage=[self squareLargeFacebookProfilePhoto:image];
注:代碼編寫與使用ARC內存管理
您也可以嘗試這樣的:
https://graph.facebook.com/INSERTUIDHERE/picture?width=100&height=100
不要忘記與用戶的UID,以取代 'INSERTUIDHERE'你正試圖獲得一張圖片。嵌入式紅寶石在這裏很好用。例如:... ook.com/ <%= @ problem.user.uid%>/pic ...
請注意,您可以將尺寸更改爲任何您想要的尺寸(例如:50x50或500x500)。它應該從照片的中心裁剪並調整大小。它(出於某種原因)有時會增大或縮小几個像素,但我認爲這與原始照片的尺寸有關。耶首先回答這個!
這是我的愚蠢的杯子在100×100使用上面的鏈接。我會提供更多,但是,因爲我是n00b,所以SO會阻止發佈多個鏈接。
100×100:https://graph.facebook.com/8644397/picture?width=100&height=100
- 1. 圖形API獲取照片正方形(100x100)
- 2. 如何從Facebook中獲取大尺寸圖片圖形api
- 3. 獲得超過25張照片從Facebook的圖形API
- 4. Facebook圖形API照片
- 5. 如何獲得Facebook個人資料大方形圖片?
- 6. Facebook的圖形的API獲得
- 7. Facebook的圖形API獲得飼料
- 8. 獲得來自Facebook的圖形API
- 9. Facebook的圖形API:獲得一組
- 10. 如何使用Facebook PHP圖形API獲取用戶圖片?
- 11. Facebook圖形API:我可以爲圖形api獲得多少facebook喜歡?
- 12. 如何獲得總頁數從Facebook圖形PHP API V2.6
- 13. 如何通過圖形API從Facebook獲得感興趣?
- 14. 如何從Facebook下載圖片圖形API
- 15. 從facebook圖形獲取完整大小的圖片API
- 16. 如何獲得與Facebook圖形API輪廓圖像
- 17. Facebook圖形API
- 18. 圖形API Facebook
- 19. Facebook圖形API HTTP POST圖片上傳
- 20. Facebook圖形文件上傳api圖片?
- 21. Facebook圖形API,沒有使用圖片
- 22. 如何與Facebook圖形API
- 23. 獲取與Facebook圖形API
- 24. 在facebook圖形API中獲取方法
- 25. 圖形API - 如何從Facebook'非官方'頁面獲取數據
- 26. 獲得「真正的」 Facebook的個人資料圖片從圖形API URL
- 27. Facebook圖形/ Fql:獲取所有圖片
- 28. IOS Facebook的圖形API - 得到的帖子大圖片
- 29. 如何使用Facebook圖形API獲取專輯照片?
- 30. 如何使用圖形API從feed中獲取大圖片?
你可以得到你想要的任何尺寸的圖片,你不侷限於這四個選項。看@傑里米的答案。 –
@LukaRamishvili:是的,你不再侷限於這四種尺寸。然而,他們是原始問題時唯一的選擇,對OP的這個答案是準確的。傑里米的答案在添加了更多選項(2012年8月我相信)後添加,現在有效。 – FluffyKitten
我明白了。感謝提醒我,我沒有看日期。 –