为什么我不能合并从图像字符串构建的PDF?

时间:2016-03-01 19:17:25

标签: php pdf

我们说我有一组对象$shippingDetails,其中每个shippingDetail都有一个属性image_string

我正在使用pdf_decodefile_put_contents将每个image_string转换为PDF。我想将PDF合并在一起。

为什么我的代码不起作用?:

    $fileArray = array();
    $i = 0;

    foreach($shippingDetails as $shippingDetail) {

        $pdf_decoded = base64_decode ($shippingDetail['image_string']);
        $tempName = 'temp' . $i++ . '.pdf';
        file_put_contents($tempName, $pdf_decoded);

        $fileArray[] = $tempName;
    }

    $dataDir = 'save_path/';
    $outputName = $dataDir . 'shippingLabel.pdf';

    $cmd = "gs -q -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -sOutputFile=$outputName ";

    //Add each pdf file to the end of the command
    foreach($fileArray as $file) {
        $cmd .= $file." ";
    }
    $result = shell_exec($cmd);

我获得的所有内容都是最后一个PDF。

1 个答案:

答案 0 :(得分:0)

我觉得这不起作用,因为我的服务器上没有安装GhostScript。

在我意识到这一点之前,我最终使用了libmergepdf by hanneskod,如果有人在将来偶然发现它,它的效果非常好。