0
我正在使用此代碼合併文本與圖像,它工作正常。但是當我用Facebook應用程序使用此代碼時,它不顯示任何輸出。任何人都可以幫我解決問題嗎?據我所知,問題是這條線:PHP代碼不在Facebook上工作
header("Content-Type: image/jpeg");
當我刪除它,它顯示了一些搞砸輸出。
<?php
header("Content-Type: image/jpeg");
$im = ImageCreateFrompng("jump_empty.png");
$black = ImageColorAllocate($im, 255, 255, 255);
$start_x = 10;
$start_y = 20;
Imagettftext($im, 12, 0, $start_x, $start_y, $black, 'ambient.ttf', "hellooo");
Imagejpeg($im, '', 100);
ImageDestroy($im);
?>
這裏是我使用的Facebook應用程序的代碼:
<?php
include_once 'facebook.php';
include_once 'config.php';
$facebook = new Facebook(array(
'appId' => FACEBOOK_APP_ID,
'secret' => FACEBOOK_SECRET_KEY,
'cookie' => true,
'domain' => '_____'
));
header("Content-Type: image/jpeg");
$session = $facebook->getSession();
if (!$session) {
$url = $facebook->getLoginUrl(array(
'canvas' => 1,
'fbconnect' => 0,
'req_perms' => 'read_stream,publish_stream'
));
echo "<script type='text/javascript'>top.location.href = '$url';</script>";
} else {
try {
$uid = $facebook->getUser();
$me = $facebook->api('/me');
echo "Hey " . $me['name'] . "!<br />";
$im = ImageCreateFrompng("jump_empty.png");
$black = ImageColorAllocate($im, 255, 255, 255);
$start_x = 10;
$start_y = 20;
Imagettftext($im, 12, 0, $start_x, $start_y, $black, 'ambient.ttf', 'hello');
Imagejpeg($im, '', 100);
ImageDestroy($im);
}
catch (FacebookApiException $e) {
echo "Error:" . print_r($e, true);
}
}
?>
非常感謝brian – Anurag 2011-12-19 14:17:56
但我需要你的幫助。如果我要使用的文本是來自Facebook而不是你好。例如,我有一個Facebook應用程序,它在圖像上寫入fb用戶的名字。 – Anurag 2011-12-19 14:26:20
我確實想要擴展我的例子,但我不想混淆原始問題。由於「圖像」實際上是一個PHP腳本,它可以像其他任何腳本一樣接受查詢參數。圖片標記行可能類似於: echo''; 然後image.php腳本會使用$ _REQUEST ['name']來生成文本。 我們在FB遊戲中使用了類似的東西來生成地圖: https://liquidfyre.com/petdragonstwo/mapmarker.php?scale=16&markers[]=0,3462,1682&markers[]=0,6475,922 – Ravenex 2011-12-20 02:39:19