PHP中使用imagick实现把PDF转成图片,_PHP教程
PHP中使用imagick实现把PDF转成图片,
PHP Manual里,对imagick的描述,真的是简洁,每个成员函数,点击打开就看到如下文本:
Warning
This function is currently not documented; only its argument list is available.
刚才解决了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;
?>
但我要用这个扩展做的,是将PDF转成PNG。PDF哦!
/**
* 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 {
echo "
";
}
?>
跟上面的差不多吧?可是总是不成功,readImage那边异常了,查看错误输出:
PHP Fatal error: Uncaught exception 'ImagickException' with message 'PostscriptDelegateFailed `test.pdf': No such file or directory'
百度谷歌了好久,最后灵机一动,不是说Postscript么?我找,我装。
这个Postscript,其实是GhostScript。
装好后,一跑,OK啦!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.

Kod Visual Studio, juga dikenali sebagai Kod VS, ialah editor kod sumber percuma — atau persekitaran pembangunan bersepadu (IDE) — tersedia untuk semua sistem pengendalian utama. Dengan koleksi sambungan yang besar untuk banyak bahasa pengaturcaraan, Kod VS boleh menjadi c
