2011-02-16 3 views
2

URL 매개 변수 image_id을 기반으로 PNG 이미지를 생성하는 스크립트를 사용하고 있습니다. http://www.example.com/image.php?image_id=G554jGTTURL의 Zend_Pdf_Image :: imageWithPath

지금 내가 그렇게 같은 PDF로 해당 이미지를 배치 할 : 예를 들어

$imagepath = "www.example.com/image.php?id=" . $id; 
$image = Zend_Pdf_Image::imageWithPath($imagepath); 

나는 모든 것이 잘 진행 로컬 파일을 사용하지만, 내가 URL을 사용할 때 다음과 같은 오류를 얻을 수

:

Fatal error: Uncaught exception 'Zend_Pdf_Exception' with message 'Cannot create image resource. File not found.' in E:<...>\library\Zend\Pdf\Resource\ImageFactory.php:38

누군가가이 작업을 수행하는 방법을 알고 있나요?

감사합니다.

답변

5

Zend_Pdf_Image::imageWithPath을 사용하여이를 수행 할 수 없습니다. 그 이유는 ImageFacotry이 파일을 필요로하기 때문입니다. 그리고 is_file 메서드를 사용하여 파일이 존재하는지 확인합니다. 그러나 is_file 기능이 원격 파일에서 작동하지 않을 수도 있습니다.

이 문제를 극복하는 한 가지 방법은 이미지를 다운로드하여 임시 이름으로 저장 한 다음이 임시 파일을 Zend_Pdf_Image::imageWithPath에 넣는 것입니다. 파일을 다운로드하고 저장하려면 예 : file_put_contents('./tempname',file_get_contents($imagepath)). 물론 임시 이름은 무작위이어야하며 나중에 제거해야합니다.