想象一下php中的setSamplingFactors

时间:2013-08-26 11:41:09

标签: php php-5.3 imagick php-5.2

我在PHP中使用Imagick创建一个具有属性“chroma subsampling”的图像到4:2:2(2x1,1x1,1x1)

我使用此代码:

$image = new Imagick('test.jpg');

$factors = array("2,1,1");

$image->setSamplingFactors($factors);

$image->writeImage('test2.jpg');

$image->destroy();

但结果是:

jpeg:sampling-factor: 2x2,1x1,1x1

查看图片的属性;我用:

$image = new Imagick(test2.jpg');
$identify = $image->identifyImage(TRUE);
$data = $identify['rawOutput'];

我想设置:

jpeg:sampling-factor: 2x1,1x1,1x1

提前感谢您的帮助和时间

1 个答案:

答案 0 :(得分:0)

我找到了一个使用shell_exec的解决方案,

<?php

$path = "e3.jpg";
$path2 = "e3.jpg";
$arr = array("-sampling-factor 4:2:2");

$properties = "";
foreach ($arr as $property) {
    $properties .= $property." ";
}

$cmd = "convert ".$path." ".$properties." ".$path2;

shell_exec($cmd);

?>

我希望只使用想象方法找到合适的解决方案。