方形Facebook图片

方形Facebook图片,facebook,facebook-graph-api,Facebook,Facebook Graph Api,使用图形API,我可以得到小,大,中图片。或者我可以得到小正方形的图片 但是我怎样才能得到大正方形的图片呢?有什么服务我可以使用吗 可以使用type参数指定所需的图片大小,该参数应为正方形(50x50)、小(50像素宽,可变高度)和大(约200像素宽,可变高度)之一 从。这是仅有的三种尺码。您可以使用更大版本的50x50图像,但它显然会出现抖动。官方无法做到这一点,这里有一个愚蠢的破解。以下代码将确保图像的宽度/高度不超过120像素。如果是,则图像将溢出到元素外: 奇怪的是,Facebook本身

使用图形API,我可以得到小,大,中图片。或者我可以得到小正方形的图片

但是我怎样才能得到大正方形的图片呢?有什么服务我可以使用吗

可以使用type参数指定所需的图片大小,该参数应为正方形(50x50)、小(50像素宽,可变高度)和大(约200像素宽,可变高度)之一


从。这是仅有的三种尺码。您可以使用更大版本的50x50图像,但它显然会出现抖动。

官方无法做到这一点,这里有一个愚蠢的破解。以下代码将确保图像的宽度/高度不超过120像素。如果是,则图像将溢出到元素外:


奇怪的是,Facebook本身并没有使用更大的正方形图像,即使它们在新的时间线图片上显示了更大的正方形个人资料图片。如果您仔细观察,他们会拍摄一个更大的矩形图像,并将其重新定位到一个HTML元素中,如Michael所建议的那样


我希望在某个时候,他们用于此的定位数据将通过API发布,但我还不知道这些数据是否可用。我曾经有过这样的情况,这也会很有帮助,到目前为止,我要么将图像居中,要么使用顶部。但这并不理想,因为FB已经通过其“图标”创建者允许并跟踪图像中最重要的“方形”的自定义定位。

正如其他答案所述,在facebook中,方形图片的分辨率仅为
50x50

不过,一个简单的CSS黑客就可以做到这一点:

查询大图像,将
img
-标记包装为
div
,并将此CSS应用于div:

img#facebook#img{
宽度:你的宽度;
}
div#wrapper{
身高:你的身高;
溢出:隐藏;
}

如果
你的\u宽度
你的\u高度
是相同的,那么你得到的是正方形图像,并且比例保持不变。

很简单,我刚刚发现了这一点

例如


tada~

现在的图形实际上可以返回任何大小的正方形图像。它们缓存最常见的尺寸(如100x100、128x128),并通过以下方式返回最接近的尺寸

没有一个答案对我来说是完美的,因为我遇到了各种尺寸的剖面图(一些高度比预期的高,一些高度比预期的小),结果要么拉伸,要么不居中

最后,我使用了
div
元素而不是
img
,并通过
背景图像
样式
属性而不是通过其
src
属性设置图像

CSS文件:

.profile-pic {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    height: 120px;
    width: 120px;
    border: solid 1px #ddd;
}
HTML:



将上面的120px(在CSS中出现两次,在HTML片段中出现两次)替换为所需的维度。

谢谢,Jimmy。但是如果我需要例如180px/180px的个人资料图片呢?就像我说的,这些是你的选择。使其成为180x180的唯一方法是自己裁剪大图像,或者使用纯HTML属性放大50x50图像。+1,@Sergey long story short…Facebook不会做你的作业!:-)此解决方案不会保持图像的原始纵横比。不错,但url实际上为不同的用户提供了不可预测的结果大小。当它设置为128和128时,每个配置文件用户的大小都相同。相关用户说,如果宽度和高度具有相同的值,这将返回一个方形图像。然而,在我自己对相册中的照片进行的测试中,返回的宽度和高度都大于200,结果也不是方形的。我试过了,但我得到了一个错误:“我们目前只接受英文版的bug”。。。尽管我的报告是英文的,但对于大多数用户,你会得到一张正方形的图片,但对于一些用户,你可能会得到一张非正方形的图片,宽度与你要求的不同,但高度不同。事实上,如果你仔细看文档,也不能保证你会得到一张正方形的图片。注意:目前,当你请求一张100x100px的图片时,Facebook会给出一张总是正方形的图片。但是,以不同的大小请求相同的图像,例如120x120px,您可能会得到宽度为120px但高度不同的非方形图像。
 <div style="background-image:url(https://graph.facebook.com/123/picture?width=120&height=120);" class="profile-pic"></div>