使用exec()进行想象的过滤器

时间:2012-06-25 13:38:06

标签: php filter exec imagick

我一直致力于将PDF转换为JPG,为此我安装了imagick和GhostScript。我一直在我的PHP代码中使用exec()来进行转换。现在我的问题是,如果输入pdf的来源是来自doc-> pdf的转换,那么当缩放时图像质量是颗粒状的。另一方面,我需要将图像大小保持在500kb以下,所以我不能使用

  • 密度超过200。

有没有办法在保存图像之前添加任何类型的过滤器,以便提高jpg质量。

以下是我的示例代码:

    $inputFileName = 'test.pdf';
    $outputFileName  = 'converted.jpg';
    $sourceFile = escapeshellarg( $inputFileName );
    $outputFile = escapeshellarg( $outputFileName );

    $exe = "convert -density 200 -colorspace RGB {$sourceFile } {$outputFile }";           

    $null = "0";

    echo exec( $exe, $null, $result );

任何帮助将不胜感激!

由于

1 个答案:

答案 0 :(得分:1)

为什么不增加密度和降低质量?例如:

$exe = "convert -density 600 -quality 70 -colorspace RGB {$sourceFile } {$outputFile }";