2012-03-24 2 views
1

Привет, я работаю над приложением Facebook, которое требует, чтобы пользователи отображали изображение и сливали его с другим изображением, проблема в том, что я использую heroku, который не предоставляет поддержку GD для jpeg-изображений, поэтому я не могу это обработать, пока формат изображения jpeg.jpeg не поддерживается 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) 
} 
+2

ehh какой тип php не поддерживает jpeg ...? Вы пробовали увидеть, что даже содержится в $ url? – dqhendricks

+0

Возможный дубликат: http://stackoverflow.com/questions/8627701/lack-of-heroku-php-gd-setup-for-jpeg-files-causing-issues –

ответ

2

Видимо Heroku не поддерживает ImageMagick на PHP, который вы можете использовать вместо GD для обработки изображений JPEG , Не очень полезно для существующих приложений, но если вы начинаете с нуля, это не должно быть проблемой.

+0

Вы можете скомпилировать расширение GD самостоятельно и использовать его вместо на герольку. – hakre

+0

Также сборник PHP Heroku является открытым исходным кодом, поэтому я пытался выяснить, как добавить GD с ImageJPEG непосредственно в сборку. Пока не повезло. –

0

Я скомпилировал свой собственный imagick.so как обходной путь, см. Мой ответ @stackoverflow here. Дайте мне знать, если это работает (основные функции, которые я пробовал, работают).

Смежные вопросы