1

我正在尝试创建简单的 Facebook 游戏。确实需要在客户端做尽可能多的事情。我使用 FB.ui api 的 Feed 方法生成动态 .jpg 以在 facebook 墙上分享游戏结果。我尝试将此代码用作图像生成器:

<?php
header ("Content-type: image/jpeg");

$pictureUrl = $_REQUEST['pic'];
$firstPlayerResult = $_REQUEST['fpr'];
$firstPlayerName = $_REQUEST['fpn'];
$secondPlayerResult = $_REQUEST['spr'];
$secondPlayerName = $_REQUEST['spn'];

$im = imagecreatefromjpeg($pictureUrl);


$white = imagecolorallocate($im, 0xFF, 0xFF, 0xFF);
$verdanaBold = './verdanab.ttf';
$verdana = './verdana.ttf';

imagefttext($im, 16, 0, 12, 33, $white, $verdanaBold, $firstPlayerResult);
imagefttext($im, 12, 0, 12, 50, $white, $verdana, $firstPlayerName);

$dimensions = imagettfbbox(12, 0, $verdana, $secondPlayerName);
$textWidth = abs($dimensions[4] - $dimensions[0]);
$x = 693 - $textWidth;

imagefttext($im, 16, 0, 603, 33, $white, $verdanaBold, $secondPlayerResult);
imagefttext($im, 12, 0, $x, 50, $white, $verdana, $secondPlayerName);

imagejpeg($im);
?>

但有一个问题。脚本在浏览器中打开时工作正常 - 它显示正确的 .jpg 屏幕,但是当我尝试将 js 脚本的 URL 链接(带有 GET 请求)从 FB.ui 传递到 Feed 方法的“图片”字段时,它的返回内部错误 (500)。当我尝试直接通过我的 facebook 墙上的链接时会出现类似的行为(facebook 不解析图像并且只显示 URL)。如何修复它并将图像正确显示为 facebook 提要?

4

1 回答 1

-1

是的,因为它是在前端部分生成的,并且没有保存为正确的图像文件。因此,该 url 不是一个固定链接,您应该能够将内容发布到 FB

于 2017-03-28T02:47:58.083 回答