Показать сообщение отдельно
  #22 (permalink)  
Старый 16.12.2020, 14:41
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Откуда взято это?

$bg->compositeImage($url_icon, Imagick::COMPOSITE_DEFAULT, $weather_icon_pixel_x, $weather_icon_pixel_y);


Что здесь $bg и чем должно быть $url_icon? Вы понимаете, что '<img src="http://openweathermap.org/img/wn/'.$icon.' "/>', это html код, который будет выполнятся только в браузере, а для ImageMagick, это пустой звук и породит ошибку?

Если свой код/примеры вы выдираете из какого-то класса, то изучайте методы этого класса, тут я вам ничем помочь не могу. Если это из руководства РНР, то к этой же функции (compositeImage) на странице ее описания даны и примеры, более чем полные, изучайте. Но не пытайтесь подсовывать ImageMagick фикцию вместо объекта и даже корректный URL, ImageMagick работает только с локальными файлами. То есть, например, получили (загрузили на сервер) картинку:

$img = file_get_contents('http://openweathermap.org/img/wn/' . $icon);
//далее создаем Imagick объект, как там у вас разбирайтесь с этим, пусть для примера его имя $img2
//получаем ресурс загруженного изображения
$img2->readImageBlob($img);
//вот теперь на ранее открытый ресурс, например, $img1, можно накладывать загруженное
$img1->compositeImage($img2, .....
Ответить с цитированием