2013-07-13 4 views
0

Используя эту логику, чтобы изменить размер и напечатать изображение:PHP imagejpeg не работает

$image_path="path/to/image.extension"; 
$image_path=imagecreatefromjpeg($image_path); 

$width=imagesx($image_path); 
$height=imagesy($image_path); 
$new_image=imagecreatetruecolor($w, $h); 
imagecopyresampled($new_image,$image_path,0,0,0,0,$w,$h,$width,$height); 
header('Content-Type: image/jpeg'); 
imagejpeg($new_image,100); 
imagedestroy($new_image); 

Но я получаю изображение недостающий значок в качестве выходного сигнала. Какая ошибка я делаю? Я попробовал распечатать переменные $width и $height, и он печатает размер исходного изображения. Таким образом, путь правильный.

В чем может быть ошибка?

+0

Сохраните вывод из вашего скрипта в файл (используйте 'wget' для заголовков зондов). Посмотрите на это в гекседекторе. Если в вашем файле JPEG есть текстовый мусор, тогда ваш PHP-скрипт также выдает мусор раньше; что делает формат файла недействительным. – mario

+0

Я проверил с помощью этого imagejpeg ($ new_image, $ saveimagepath, 100); Изображение правильно сохраняется и открывается в браузере, Paint ... –

ответ

1

Ошибка была в строке imagejpeg($new_image,100);

Это должно быть imagejpeg($new_image); качества не должны быть включены в том, что, если не предназначена для сохранения.

+0

Ну, это сработало. Спасибо!! –

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