2013-04-22 3 views
0

외부 URL을 가져 와서 회색 음영으로 변환 한 다음 브라우저에 표시하고 싶습니다.외부 URL의 회색 음영 이미지

$youtube_id = explode('&v=', $video['youtube_link'])[1]; 
           $image_colour = "http://img.youtube.com/vi/$youtube_id/0.jpg"; 
           $im = imagecreatefromjpeg($image_colour); 
           $image_gray = imagefilter($im, IMG_FILTER_GRAYSCALE); 
           imagejpeg($im, $youtube_id); 

이 작동하지 않는 것 :

나는 아래의 코드와 GD를 사용했습니다.

좋은 해결책이 있습니까?

+0

정확히 작동하지 않는 이유는 무엇입니까? 결과/오류 메시지를 설명해주십시오. – michi

+0

오류 메시지가 없습니다. 그냥 이미지를 표시하지 않습니다 –

답변

0

이미지를 표시하려면 올바른 헤더를 설정해야합니다.

나는 코드를 조금 편집하고 여기에 당신은 작업 예제가 : 그것은 당신의 요구에 맞게 있도록

<?php 
$video = "https://www.youtube.com/watch?v=0aFkZET3A8A"; 
$url_parts = explode('v=', $video); 
$youtube_id = $url_parts[1]; 
$image_colour = "http://img.youtube.com/vi/$youtube_id/0.jpg"; 
$im = imagecreatefromjpeg($image_colour); 
$image_gray = imagefilter($im, IMG_FILTER_GRAYSCALE); 
header('Content-Type: image/jpeg'); 
imagejpeg($im); 
?> 

것은 그것을 수정합니다. 당신은 또한 폭발 대신 regexp를 사용하는 것을 고려해야합니다 (지금은 &v=xyz 구를 가진 간단한 URL에서만 작동합니다).

+0

이 작업에 timthumb을 사용하게되었습니다. 어쨌든 정보 주셔서 감사합니다. –

관련 문제