这是我得到的代码,它工作正常。我只是不相信这是“最好”的方式。
<?
$im = new imagick();
$im->setResolution(10,10);
$im->readimage('document.pdf');
$pages = $im->getNumberImages();
$im->clear();
$im->destroy();
for($i=0;$i<$pages;$i++) {
$im = new imagick();
$im->setResolution(100,100);
$im->readimage('document.pdf['.$i.']');
$im->setImageFormat('jpeg');
$im->writeImage($i.'.jpg');
$im->clear();
$im->destroy();
}
?>
任何人都知道如何以最好的方式做到这一点?请告诉我如何。
答案 0 :(得分:2)
希望这会对某人有所帮助。
我的解决方案是使用方法writeImages。确保将 $ adjoin 标志设置为false以获取单独的文件。
$im = new imagick();
$im->setResolution(100,100);
$im->readimage('document.pdf');
$im->setImageFormat('jpeg');
$im->writeimages('document.jpg', false);
$im->clear();
$im->destroy();
它将导致 document-0.jpg,document-1.jpg,document-3.jpg 等。