您好我正在使用Facebook应用程序,需要检索用户显示图片并将其与其他图像合并,问题是我使用heroku
不提供GD支持jpeg图像,因此我不能在图像格式为jpeg时进行处理。
这是我在输入图像是jpeg时得到的结果:
Warning: imagecreatefromstring(): Data is not in a recognized format in …
Warning: imagegif() expects parameter 1 to be resource, boolean given in…
$dpImageGif = 'temp/'. $userId '.gif';
$url = file_get_contents("http://graph.facebook.com/{$userId}/picture?type=large");
$dpImage = 'temp/' . $userId ;
$imageObject = imagecreatefromstring($url);
//$imageObject = imagecreatefromjpeg($dpImage);
imagegif($imageObject, $dpImageGif);
gd_info():
array(11) {
["GD Version"]=>
string(27) "bundled (2.0.34 compatible)"
["FreeType Support"]=>
bool(false)
["T1Lib Support"]=>
bool(false)
["GIF Read Support"]=>
bool(true)
["GIF Create Support"]=>
bool(true)
["JPEG Support"]=>
bool(false)
["PNG Support"]=>
bool(true)
["WBMP Support"]=>
bool(true)
["XPM Support"]=>
bool(false)
["XBM Support"]=>
bool(true)
["JIS-mapped Japanese Font Support"]=>
bool(false)
}
答案 0 :(得分:2)
显然Heroku确实支持PHP上的ImageMagick,你可以使用它代替GD进行JPEG图像处理。对现有应用程序不是很有用,但如果你从头开始,它应该不是问题。
答案 1 :(得分:0)
我编译了自己的imagick.so
作为解决方法,请参阅我的回复@stackoverflow here。让我知道它是否有效(我尝试过的基本功能)。