facebook图形api:offset_y offset_x

facebook图形api:offset_y offset_x,facebook,facebook-graph-api,facebook-javascript-sdk,Facebook,Facebook Graph Api,Facebook Javascript Sdk,您好,我正在尝试理解在facebook图形API中offset_y的含义 我试着理解这篇相关的文章,但不能 例如,此事件。调用图形api时生成“偏移量”:20 但是,实际偏移量为-4px: 非常感谢您的帮助。偏移量x和偏移量y的值是原始图像大小的百分比,而不是像素值 百分比的范围为0到100,是空间大小调整后图像溢出偏移值的百分比 例如,我有一个720x480像素的图像。封面照片空间为851x315像素,因此当照片调整大小以适应该空间时,其大小为851x567.33像素。如果在为封面定位图像时

您好,我正在尝试理解在facebook图形API中offset_y的含义

我试着理解这篇相关的文章,但不能

例如,此事件。调用图形api时生成“偏移量”:20

但是,实际偏移量为-4px:


非常感谢您的帮助。

偏移量x和偏移量y的值是原始图像大小的百分比,而不是像素值

百分比的范围为0到100,是空间大小调整后图像溢出偏移值的百分比

例如,我有一个720x480像素的图像。封面照片空间为851x315像素,因此当照片调整大小以适应该空间时,其大小为851x567.33像素。如果在为封面定位图像时将其向下拖动一半,则返回的
offset_y
将为
50
。这意味着50%的“剩余”空间无法放入封面照片槽

“剩余”垂直(y)空间为567.33-315=252.33像素。50%的空间是126.167。在这种情况下,我的
top
偏移量将为-126.167 px

因此,
offset_x
offset_y
是将调整大小的图像定位到Facebook照片空间所需的像素移动百分比

//提前检索这些值(Graph API等)
var offset_x=0;
var偏移量_y=50;
var fbCoverPhotoWidth=851;//已知值,以像素为单位
var fbCoverPhotoHeight=315;//已知值,以像素为单位
//从Graph API返回的封面照片URL创建图像
var img=新图像();
img.src=”https://scontent.xx.fbcdn.net/v/t1.0-0/p480x480/your-photo-url-here.jpg";
//计算缩放比
var比率=数学最大值(fbCoverPhotoWidth/img.width,fbCoverPhotoHeight/img.height);
//将偏移百分比转换为像素值
var offset_x_pixels=数学单元((img.width*比率)-fbCoverPhotoWidth)*(offset_x/100));
var offset_y_pixels=数学单元((img.height*比率)-fbCoverPhotoHeight)*(offset_y/100));
log(偏移量x像素);

log(偏移量为像素)