So konvertieren Sie PDF in ein Bild in PHP: Installieren Sie zuerst „GhostScript“ und konvertieren Sie dann das PDF in ein Bild.
Empfohlen: „PHP-Video-Tutorial“
Verwenden Sie imagick in PHP, um PDF in Bilder umzuwandeln
Im PHP-Handbuch ist die Beschreibung von imagick sehr prägnant und jede Mitgliedsfunktion ist per Mausklick zu bedienen Öffnen Sie es und Sie sehen den folgenden Text:
Warning This function is currently not documented; only its argument list is available.
Nachdem ich gerade das PHP-Ladeproblem gelöst habe, ist es sehr praktisch, Bilder online zu verarbeiten:
<?php Header("Content-type: image/jpeg"); /** * 缩小图片尺寸. * * @param $image 待处理的二进制图片 * @param $width 处理后图片尺寸的宽度(px) * @param $height 处理后图片尺寸的高度(px) * @param $crop 是否裁剪图片 * * @return 处理好的二进制图片 */ function resize($image, $width, $height, $crop) { $imagick = new Imagick($image); $w = $imagick->getImageWidth(); $h = $imagick->getImageHeight(); if ($w > $width || $h > $height) { if ($crop) { $imagick->cropThumbnailImage($width, $height); } else { $imagick->resizeImage($width, $height, Imagick::FILTER_LANCZOS, 1, true); } } $processed_image = $imagick->getImageBlob(); return $processed_image; } $s=resize("123.jpg", 60, 40, 1); echo $s; ?>
Aber ich möchte diese Erweiterung verwenden, um sie zu konvertieren PDF zu PNG. PDF!
<?php /** * PDF2PNG * @param $pdf 待处理的PDF文件 * @param $path 待保存的图片路径 * @param $page 待导出的页面 -1为全部 0为第一页 1为第二页 * @return 保存好的图片路径和文件名 */ function pdf2png($pdf,$path,$page=-1) { if(!extension_loaded('imagick')) { return false; } if(!file_exists($pdf)) { return false; } $im = new Imagick(); $im->setResolution(120,120); $im->setCompressionQuality(100); if($page==-1) $im->readImage($pdf); else $im->readImage($pdf."[".$page."]"); foreach ($im as $Key => $Var) { $Var->setImageFormat('png'); $filename = $path."/". md5($Key.time()).'.png'; if($Var->writeImage($filename) == true) { $Return[] = $filename; } } return $Return; } $path="images";//请确保当前目录下有这个文件夹,由于一直要用,所以就不加检测了 $s=pdf2png("test.pdf",$path); $scount=count($s); for($i=0;$i<$scount;$i++) { echo "<div align=center><font color=red>Page ".($i+1)."</font><br><a href="".$s[$i]."" target=_blank><img border=3 height=120 style="max-width:90%".$s[$i]."" alt="So konvertieren Sie PDFs in PHP in Bilder" ></a></div><p>"; } ?>
Ist es ähnlich wie oben? Aber es schlägt immer fehl. Es gibt eine Ausnahme auf der readImage-Seite:
PHP Fatal error: Uncaught exception 'ImagickException' with message 'PostscriptDelegateFailed `test.pdf': No such file or directory'
Nachdem ich lange auf Baidu und Google gesucht hatte, hatte ich endlich eine Idee. Ich suche danach, ich tue so.
Dieses Postscript ist eigentlich GhostScript.
Nach der Installation führen Sie es aus und es ist in Ordnung!
Das obige ist der detaillierte Inhalt vonSo konvertieren Sie PDFs in PHP in Bilder. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!