PHP - сохранить преобразованное изображение в папку

Я пытаюсь преобразовать изображение JPEG в черно-белое изображение (в градациях серого) с помощью функции php IMG_FILTER_GRAYSCALE. Он отлично работает, но я хотел бы сохранить изображение в папку.

Ниже код:

$im = imagecreatefromjpeg('pathtomyimage/myimage.jpg');
if($im && imagefilter($im, IMG_FILTER_GRAYSCALE)) {
 header('Content-Type: image/jpeg');
 imagejpeg($im);
} else 
 print 'Error during the b & w conversion';

Все очень просто...

Таким образом, он печатает черно-белое изображение на экране, и я вижу его в своем браузере, но не могу сохранить его в папке (например, img / bw / myimage.jpg).

Есть способ сделать это? Как мне это сделать?

3 ответа

Решение

Из руководства:

imagejpeg($im, 'img/bw/myimage.jpg');

Вы можете использовать imagejpeg таким образом, чтобы сохранить изображение в папке:

imagejpeg($image, "/path/to/store/file.jpg");

Вы можете использовать как это

$tmp=imagecreatetruecolor($newwidth,$newheight);

    $newwidth1=120;
    $newheight1=150;
    $tmp1=imagecreatetruecolor($newwidth1,$newheight1);

    imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,
     $width,$height);

    imagecopyresampled($tmp1,$src,0,0,0,0,$newwidth1,$newheight1, 
    $width,$height);

    $filename = "../Advertisement/". $_FILES['img']['name'];
    $filename1 = "../Advertisement/small". $_FILES['img']['name'];

    $filename2 = $_FILES['img']['name'];
    imagejpeg($tmp,$filename,100);
    imagejpeg($tmp1,$filename1,100);

    imagedestroy($src);
    imagedestroy($tmp);
    imagedestroy($tmp1);
Другие вопросы по тегам