我在Instagram发布的不是方形照片https://instagram.com/p/7M7aBoNTcM/
通过Instagram api使用https _ // api.instagram.com/v1/media/1061415553965831926_2141618404?access_token=Token尝试获取所有照片,我为该图像提供下一个standard_resolution网址:https://scontent.cdninstagram.com/hphotos-xfa1//t51.2885-15//s640x640//sh0.08//e35//11821940_708988202567623_81870409_n.jpg
没有用于裁剪的参数,但是我在图像的顶部和底部得到了带有白线的图像 .
为什么在Instagram的网站上发送我的图像(矩形),但api返回带有白线的正方形?
如何在没有白线的情况下发布不是方形图片?
1 回答
2015年9月4日更新:
截至2015年9月3日,instagram now allows API clients to get the images in their original aspect ratio(即风景,肖像的矩形)并且如果您在API客户端中更新了新设置,则不会裁剪它们 .
步骤:
登录https://instagram.com/developer/上的客户端应用程序设置
单击顶部导航菜单上的 Manage Clients .
找到您的API客户端,然后单击 Edit .
单击API客户端应用程序的 Migrations 选项卡,然后选中"Non square media"框 .
单击“更新客户端” .
而已!现在,当您从API endpoints 获取图像时,上传的人像,风景将不会被裁剪为方形图像,并且将返回原始图像 .
相关博客文章:API migration for landscape and portrait formats
上一个答案(已弃用 . 除非您同时想要方框和横向/纵向版本,否则请勿阅读)
据我所知,Instagram尚未更新他们的API以返回各种尺寸的原始图像,以用于他们最近推出的新的Landscape / Portrait上传功能 .
有一个 - 因为缺少一个更好的词 - “ workaround ”,你可以用来从你的风景/肖像照片的api返回的方形图像中获取原始未剪切的风景/肖像图像 .
这是如何做 .
获取API返回的缩略图图像URL . 在您的情况下,返回的URL是
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/c257.0.565.565/11375403_666004300168456_93194657_n.jpg
如果您删除图像名称前的最后一个网址段,即
/c257.0.565.565
,您将获得横向缩略图的网址 . (见下文)以下是如何获得原始宽高比的其他2种尺寸 .
现在使用这个删除了最后一个网址段的新网址,
如果您替换API返回的缩略图(裁剪/带有白色边框)
s150x150
与s320x320
,您将成为低分辨率风景图像网址如果您替换API返回的缩略图(裁剪/带有白色边框)
s150x150
和s640x640
,您将获得标准分辨率风景图像 .从API获取缩略图URL后,您可以以编程方式完成所有这些操作 .
就像我之前说的那样,这是一个 workaround ,直到Instagram正式更新他们的API并公开这些额外的图像 .
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/c257.0.565.565/11375403_666004300168456_93194657_n.jpg
缩略图横向(未剪切)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/11375403_666004300168456_93194657_n.jpg
低分辨率风景(未剪切)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s320x320/e35/11375403_666004300168456_93194657_n.jpg
[2
标准分辨率景观(未剪切)
https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s640x640/e35/11375403_666004300168456_93194657_n.jpg