关于如何为命令行执行此操作的大量答案
convert /path/to/file/file.pdf[3] output.jpg
太好了...但是如果我在内存处理中使用,我将使用 PDFlib 生成 PDF,然后将其缓冲区输出到我想要生成所选页面的 jpg 预览的函数。如何?我的代码:
[...]
$buf = $pdf->get_buffer();
//$buff is just a PDF stored in a string now.
$im = new Imagick();
$im->readimageblob($buf);
$im->setImageFormat("jpg");
$im->setimagecompressionquality(60);
$len = strlen($im);
header("Content-type: image/jpeg");
header("Content-Length: $len");
header("Content-Disposition: inline; filename=test.jpg");
echo $im;
这会创建一个 jpeg,但总是返回 PDF 的最后一页。我希望能够选择将转换哪一个。不保存临时文件和使用命令行(exec('convert /path/to/file/file.pdf[3] output.jpg'))
语法是否可行?
让我补充一下我试过
$im->readimageblob($buf[2]);
它没有用:)