在使用Imagick php扩展将多页PDF转换为JPG时,如何最好地纠正黑色背景?
以下是我应用程序中使用的代码:
$imagick = new Imagick($file);
$imagick->setResolution(150,150);
$imagick->setImageFormat("jpg");
$imagick->setImageCompression(imagick::COMPRESSION_JPEG);
$imagick->setImageCompressionQuality(70);
foreach ($imagick as $c => $_page) {
$_page->setImageBackgroundColor('white');
$_page->adaptiveResizeImage($maxsize,$maxsize,true);
$_page->writeImage("$file-$c.jpg");
}
我知道可以使用flattenImage方法来移除黑色背景,例如:
$imagick = $imagick->flattenImages();
但是当文件有多个页面时,flattenImages方法会将所有页面放在同一张图像上,因此生成的所有JPG副本中都是最后一页的复制。 如果有人能帮助我,我将不胜感激。