图形API获取照片正方形(100x100)

Huy*_*ran 24 facebook facebook-graph-api

如何使用选择视图用户设置获取Facebook照片(如果他们使用大图像).如果我在路径图中使用type ="large"或"normal"或"small"那么我得到图像但它不是正方形而且它不是用户集的选择视图.那么,我怎样才能获得方形照片和用户设置视图

CBr*_*roe 48

你可以得到更高尺寸的正方形图片比正常之一type=square(这将是在尺寸仅为50×50像素)通过请求用图片widthheight参数设置.

请参阅https://developers.facebook.com/docs/reference/api/user/,"picture "连接,引用:

"此外,您可以指定宽度和高度URL参数来请求特定大小的图片.这将返回最接近请求的大小和请求的宽高比的可用个人资料图片.[...]如果width = height,我们将始终返回一张方形图片."

例:

https://graph.facebook.com/4/picture?type=square - 扎克伯格先生的"正常"方形图片,尺寸50x50

https://graph.facebook.com/4/picture?width=100&height=100 - 100x100像素,完美匹配所需尺寸

https://graph.facebook.com/4/picture?width=150&height=150 - 要求150x150,获得156x156.

如果你可以忍受可能有时候获得的图像可能比所要求的尺寸大一点(或更小),你应该没问题.

否则,需要进行一些测试,以确定是否存在某些方形图像尺寸,Facebook将始终"有库存"并提供完全匹配,或者根据他们上传的图片,每个用户可能会有所不同.

  • @Lego:通过这条路径,我可以在视口中获取图像,它的大小只有50x50.但我希望尺寸为100x100,用户上传大图像并且不移动图像(在编辑缩略图中) - >路径`graph.facebook.com/zuck/picture?width = 100&height = 100`的结果将获得准确的图像我想要的大小,如果用户移动图像 - >图像的结果大小为50x50.我不知道发生了什么事? (2认同)

obj*_*der 12

[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{ @"fields" : @"id,name,picture.width(100).height(100)"}]
         startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
             if (!error) {
             }
Run Code Online (Sandbox Code Playgroud)

而不是100你可以把200,300加密响应并用密钥获取它


Nir*_*hah 3

尝试使用类型square。如下:

http://graph.facebook.com/[user_id]/picture?type=square

正方形尺寸限制为 50x50。如果您想要大尺寸,则必须放大方形版本或裁剪大版本。

如果您不介意自己检索和裁剪图像,请按照我的教程获取代码来完成此操作。它可以让您生成大于 50 像素的方形图像。