使用mogrify转换图像并将其输出到变量

时间:2016-06-15 12:00:28

标签: php shell graphicsmagick

我正在尝试使用mogrify将bmp转换为jpg。然后应将jpg存储在变量中。

这是我迄今为止的尝试

$jpg_content = shell_exec("gm mogrify -format jpg ". escapeshellarg($image) . " && cat " . escapeshellarg($image)."2>&1");

但是$jpg_content为空

修改

假设$image/var/www/website.com/public_html/www/imgscript/tmp/0048699218

shell_exec("gm mogrify -format jpg ". escapeshellarg($image));
$jpg_content = file_get_contents($image.'.jpg');

在mogify完成后,它应该已经创建了jpg但不是这里的情况。tmp目录是可写的,因此它不是权限问题。

2 个答案:

答案 0 :(得分:0)

您认为应该&& ...做什么?

删除" && cat及其背后的所有内容。

答案 1 :(得分:0)

您可以通过告诉GraphicsMagick在其 stdout 上编写JPEG并将其选择为这样的PHP变量来避免写入磁盘:

$content=shell_exec("gm convert image.bmp jpg:-");