かなり久しぶりの更新です。
Facebookページのカバー画像についてちょっとしたメモを・・・
graph APIでカバー写真のデータを取得できるのですが、サイズが合わないものがあります。。。
現在のカバー写真のサイズは、851×315で表示されるようになっているらしい。
graph APIで取得したイメージは丁度のものから、縦サイズが大きいものがあったりします。
縦サイズが大きい場合、大抵cover.offset_yに値が入っています。
で、ピクセル的に何ピクセルのoffsetかというところになるんですが、、、
その計算式をメモしておきます。。
まず、ソースの縦横サイズを取得
$size = getimagesize($data[‘cover’][‘source’]);
で、オフセットの取得
$offset_y = ceil($data[‘cover’][‘offset_y’]/100*((851/$size[0]*$size[1])-315));
$url = str_replace(“/s720x720/”, “/c0.”.$offset_y.”.851.315/p851x315/”, $data[‘cover’][‘source’]);
とりあえずここまで・・・