我在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
提前感谢您的帮助和时间
答案 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);
?>
我希望只使用想象方法找到合适的解决方案。