在 PHP 中从 Imagick 图像输出原始图像

2022-08-30 21:58:05

我正在使用Imagick lib对原始图像进行一些修改。然后我想直接将其输出到浏览器而不保存。有没有办法做到这一点?

我尝试使用(空输出)和“php://stdout”,错误“无法写入文件”。Imagick::writeImage('STDOUT')

有什么想法吗?:)


答案 1

你只需要回显你的imagick对象:

$img = new Imagick($file);
header('Content-Type: image/'.$img->getImageFormat());
echo $img;

答案 2

如果你使用的是HHVM,它会抛出一个致命的异常,如果你只是尝试回显Imagick对象,所以你需要调用getimageblob();

$imagick = new Imagick('my-image.jpg');
header('Content-Type: image/' . $imagick->getImageFormat());
echo $imagick->getimageblob();

推荐