如何在 php 中将一系列图像转换为一个 pdf 文档


How to convert a series of images into one pdf document in php

我搜索了一段时间,找不到明确的答案。

我有一个包含图像的文件夹:001.png, 002.png ....等。

我试过了。

$allImages = 'folder/001.png folder/002.png folder/003.png';
//and
$allImages = 'folder/001.png,folder/002.png,folder/003.png';
//and
$allImages = '-adjoin folder/001.png -adjoin folder/002.png -adjoin folder/003.png';

然后:

exec(convert $allImages folder/newdoc.pdf);
//and
exec(convert -density 150 -format pdf{} ".$all_images folder/newdoc.pdf);

这只会将一页放入 pdf 中,并且 pdf 的标题为 png,因此 pdf 查看器确实无法读取它。

我不想使用(转换*.png newdoc.pdf),因为我需要按特定顺序排列pdf。编辑:这也不起作用。

您可以使用 mPDF。您需要的所有信息都在这里: mPDF Github项目

通过查看 imagemagick.org,我可以得出结论,它的工作原理是这样的:

$allImages = '-adjoin folder/001.png -adjoin folder/002.png -adjoin folder/003.png';
exec("convert $allImages folder/newdoc.pdf");

FPDF 都是必需的,请参阅本教程页面:http://www.fpdf.org/en/tutorial/tuto2.htm在这里您可以找到手册:http://www.fpdf.org/en/doc/index.php

执行类似以下示例的操作:

<?php
require_once('fpdf.php');
$pdf = new FPDF('P', 'mm', 'A4');
$pdf->AddPage();
foreach($pictures as $picture) {
    $pdf->Image($image,'0','0');
    $pdf->Ln();
}
$pdf->Output();
?>

你需要研究这个老问题

如何在 Linux 上从命令行将一系列图像转换为 PDF?

你可以为此使用ImageMagick。