php imagick将pdf转换为png高品质

问题描述 投票:1回答:2

我试图通过Imagick将PDF转换为高质量的PNG,但文件仍然模糊不清。目前,我正在运行以下选项,但无法找到正确的标志以从转换中获得清晰的PNG。原始PDF文件是8.5 x 11.建议?谢谢!

$image = new \Imagick(storage_path('app/'.$path));
$image->setResolution( 200, 200 );
$image->scaleImage(1700,2200);
$image->setImageFormat( "png32" );
$image->writeImage(storage_path('app/'.$split[0].'.png'));
php imagemagick imagick
2个回答
4
投票

您需要在读取图像之前设置分辨率,因为图像在读取时会被光栅化,因此无法在之后设置分辨率 - 这已经太晚了!

尝试以下这些方面:

$imagick = new Imagick();
$imagick->setResolution(288,288);
$imagick->readImage('someFile.pdf');

0
投票
$imagick_i = new Imagick();
    $imagick_i->setResolution( 595, 842 );
    $imagick_i->readImageblob($blob);
    $imagick_i->setImageFormat( "png32" );
    foreach ($imagick_i as $auxiliaryvalue) {
        echo '<img src="data:image/png;base64,' .  base64_encode($auxiliaryvalue->getimageblob())  . '" /><br>';

    }
© www.soinside.com 2019 - 2024. All rights reserved.