将PDF文档的一部分呈现为图像文件需要哪些库、扩展等?

我发现大多数PHP PDF库都围绕着创建PDF文档,但是是否有一种简单的方法可以将文档渲染成适合web使用的图像格式呢?

我们的环境是一个LAMP堆栈。


当前回答

你可以使用下面的库来使用javascript将pdf转换为图像

http://usefulangle.com/post/24/pdf-to-jpeg-png-with-pdfjs

其他回答

下面是我编写的一个简单类,并在几个项目中使用。它只是包装图像并处理将每个页面写入磁盘。如果有人还在寻找一种简单的方法来做到这一点,这个链接可能会有帮助。

你需要ImageMagick和GhostScript

<?php
$im = new imagick('file.pdf[0]');
$im->setImageFormat('jpg');
header('Content-Type: image/jpeg');
echo $im;
?>

[0]表示第一页。

如果你从一个blob中加载PDF,这是你如何获得第一页而不是最后一页:

$im->readimageblob($blob);
$im->setiteratorindex(0);

我是PDFlib的作者,这是一个php的GhostScript包装器,使用这个库的优点是,它已经经过测试,它不需要ImageMagic

当涉及到pdf时,GhostScript命令总是比ImageMagic快,所以你应该要么使用GhostScript包装器,要么使用纯GhostScript命令

$pdflib = new ImalH\PDFLib\PDFLib();
$pdflib->setPdfPath($pdf_file_path);
$pdflib->setOutputPath($folder_path_for_images);
$pdflib->convert();

你可以使用下面的库来使用javascript将pdf转换为图像

http://usefulangle.com/post/24/pdf-to-jpeg-png-with-pdfjs