2017-12-14 13 views
0

URL을 사용하여 이미지를 추가 할 수는 있지만 로컬 이미지 파일을 가져 오지 못합니다.이미지 삽입 PhpWord

Uncaught PHP Exception PhpOffice\PhpWord\Exception\InvalidImageException: "" at C:\Users\kaskull\Desktop\symfony\examsgenerator\vendor\phpoffice\phpword\src\PhpWord\Element\Image.php line 386

내 첫번째 생각은 그 같은 것을해야한다, 그래서 나는 컨트롤러에 내 말을 createing 해요 : :

$portada->addImage('../Resources/Asset/images/logo.png'); 

같은 오류가

$portada->addImage('earth.jpg'); 

이 오류를 얻기 .

편집 :

내가 할 경우 : 그것은

FALSE를 반환하지만이를 사용하는 경우, 그것은 실행

$path = realpath('../Resources/Asset/images/logo.png');var_dump(is_readable($path)); 

.

$path=realpath('C:\Users\CARLES\Desktop\symfony\examsfinal\src\AppBundle\Resources\Asset\images\logo.png'); 

답변

1

의는 다음과 같은 폴더 구조를 가지고 있다고 가정 해 봅시다 :

C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Controllers\MyController.php 

C:\Users\kaskull\Desktop\symfony\examsgenerator\src\AppBundle\Resources\Asset\images\logo.png 

UPDATE :

가 컨트롤러에이 시도 :

PHP에서
$path = realpath(__DIR__ . '/../Resources/Asset/images/logo.png'); 
$portada->addImage($path); 

__DIR__ 디렉토리입니다 파일 ()). 컨트롤러 클래스가 다른 파일 컨텍스트에서 실행되기 때문에 필요합니다. 그것이 상대 경로가 작동하지 않는 이유입니다.

+0

이것은 정확히 내가하고있는 일이며 내 폴더가 어떻게 구성되어 있는지, 나는 그 오류를 얻고있다. – KaSkuLL

+0

@KaSkuLL 업데이트 된 답변보기 – zstate

+0

새로운 질문으로 편집했습니다 – KaSkuLL