首頁  >  文章  >  後端開發  >  php Imagick , 怎么使用Imagick裁切图片

php Imagick , 怎么使用Imagick裁切图片

WBOY
WBOY原創
2016-06-13 11:43:181270瀏覽

php Imagick 求助, 如何使用Imagick裁切图片
我需要 景某个PDF文档中的某一页裁切其中一部分, 生成一新的png格式的文档.
gd不支持PDF格式,  Imagick 支持打开pdf, 并将其中一页转成PNG, 但是如何将此页的一部分裁切出来呢

参考代码来自网络
代码如下

<br /> function pdf2png($pdf,$path,$page=-1)<br />{  <br />   if(!extension_loaded('imagick'))<br />   {  <br />       return false;  <br />   }  <br />   if(!file_exists($pdf))<br />   {  <br />       return false;  <br />   }  <br />   $im = new Imagick();  <br />   $im->setResolution(600,600);  <br />   $im->setCompressionQuality(100);<br />   if($page==-1)   <br />      $im->readImage($pdf);<br />   else<br />      $im->readImage($pdf."[".$page."]");<br />   foreach ($im as $Key => $Var)<br />   {  <br />       $height=$Var->getImageHeight();//取得原图的高度<br />       $width=$Var->getImagewidth();//取得原图的宽度<br />       //echo "H".$height."w:". $width;<br />       $im_cut = new Imagick();  //这里设置新图的实例<br />       $im_cut->setResolution(600,600); //分辨率<br />       $im_cut->setCompressionQuality(100);//压缩率<br />//       $im_cut->setImageFormat('png'); //设置新图的格式 这里出错<br />//       $im_cut->setImageType (0);<br />//       $im_cut->      接下来不知道如何做了 <br />//如何设置新图的高度长度 <br />//如何把 $var中的一部分复制到新图,<br />//如何保存新图<br /><br />       <br />       $Var->setImageFormat('png');  <br />       $Var->setImageType (0);<br />       $filename = $path."/". md5($Key.time()).'.png';<br />       if($Var->writeImage($filename) == true)<br />       {  <br />           $Return[] = $filename;  <br />       }  <br />   }  <br />   return $Return;  <br />}  <br />

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn