PHP Imagemagick - 在尝试输出图像而不保存到本地文件夹时,passthru无法正常工作

时间:2013-03-18 12:55:08

标签: php imagemagick passthru

在下面的代码中,iam尝试通过imagemagick处理输出图像。这里,我将边界半径应用于输入图像。当我使用以下代码将图像保存到输出文件夹时,我正在获取输出。

<?php
$input = "input.png";
$s = 10;
$t = 10;
$size = getimagesize ( $input );
$output = $outputfolder . $outputname;
exec( "convert -size " . $size [0] . "x" . $size [1] . " xc:none -fill -transparent 
-draw \"roundRectangle 0,0 " . $size [0] . "," . $size [1] . " $s,$t\"  " . $input .
" -compose SrcIn -composite " . $output . " " );
?>

我想要一个尚未保存到本地文件夹但希望显示带有标题内容类型的输出的输出。我使用passthru这样做。但我没有得到输出。我正在尝试使用以下代码

    <?php
$input = "input.png";
header("Content-Type: image/png");
$size = getimagesize ( $input );
$s = 10;
$t = 10;
$cmd =  " - size " . $size [0] .
              "x" . $size [1] . " xc:none -fill -transparent  -draw
\"roundRectangle 0,0 " .
                $size [0] . "," . $size [1] . " $s,$t\"  " .
                 " -compose SrcIn -composite" .
                " -tile - $input";

passthru("convert $cmd PNG :-")

?>

我认为我使用的命令错了。请帮帮我。提前谢谢。

1 个答案:

答案 0 :(得分:0)

你能解释一下你现在想要保存文件的原因吗?出于什么目的,图像被转换?

在我得到额外的信息之前,我会假装该图像作为CMS的一部分上传并进行调整以适应布局,然后显示给用户?

如果是个人情况,我会保存输出文件,然后执行类似显示的操作。

header("Content-Type: image/png");
echo file_get_contents($pathToImage)

在运行image magick之前,您可以检查文件是否已经存在。这可能比每次显示图像时重新处理图像更有效率