国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php將pdf生成png縮略圖的實例程序

2024-05-04 21:48:24
字體:
來源:轉載
供稿:網友

需要安裝imagick及其php擴展,一共有二個函數,都是從網上摘下來的,還沒測試,這個方案應該可行,可以簡單的仿照在線文檔功能,有機會在項目中實踐一下.

第一種,代碼如下:

  1. /** 
  2. * PDF2PNG    
  3. * @param $pdf  待處理的PDF文件 
  4. * @param $path 待保存的圖片路徑 
  5. * @param $page 待導出的頁面 -1為全部 0為第一頁 1為第二頁 
  6. * @return      保存好的圖片路徑和文件名 
  7. */ 
  8.  function pdf2png($pdf,$path,$page=0) 
  9. {   
  10.    if(!is_dir($path)) 
  11.    { 
  12.        mkdir($path,true); 
  13.    } 
  14.    if(!extension_loaded('imagick')) 
  15.    {   
  16.      echo '沒有找到imagick!' ; 
  17.      return false; 
  18.    }   
  19.    if(!file_exists($pdf)) 
  20.    {   
  21.       echo '沒有找到pdf' ; 
  22.        return false;   
  23.    }   //m.survivalescaperooms.com 
  24.    $im = new Imagick();   
  25.    $im->setResolution(120,120);   //設置圖像分辨率 
  26.    $im->setCompressionQuality(80); //壓縮比 
  27.    $im->readImage($pdf."[".$page."]"); //設置讀取pdf的第一頁 
  28.    //$im->thumbnailImage(200, 100, true); // 改變圖像的大小 
  29.    $im->scaleImage(200,100,true); //縮放大小圖像 
  30.    $filename = $path."/". time().'.png'
  31.    if($im->writeImage($filename) == true) 
  32.    {   
  33.       $Return  = $filename;   
  34.    }   
  35.    return $Return;   
  36. }   
  37. $s = pdf2png('file/1371273225-ceshi_ppt.pdf','images');  
  38. echo '<div align="center"><img src="'.$s.'"></div>';  

第二種,代碼如下:

  1. function pdf2png($PDF,$Path){ 
  2.    if(!extension_loaded('imagick')){ 
  3.        return false; 
  4.    } 
  5.    if(!file_exists($PDF)){ 
  6.        return false; 
  7.    } 
  8.    $IM = new imagick(); 
  9.    $IM->setResolution(120,120); 
  10.    $IM->setCompressionQuality(100); 
  11.    $IM->readImage($PDF); 
  12.    foreach ($IM as $Key => $Var){ 
  13.        $Var->setImageFormat('png'); 
  14.        $Filename = $Path.'/'.md5($Key.time()).'.png'
  15.        if($Var->writeImage($Filename) == true){ 
  16.            $Return[] = $Filename
  17.        } //m.survivalescaperooms.com 
  18.    } 
  19.    return $Return
  20. }  

創建一個jpg縮略圖并顯示出來,代碼如下:

  1. <?php 
  2. header('Content-type: image/jpeg'); 
  3. $image = new Imagick('image.jpg'); 
  4. // If 0 is provided as a width or height parameter,// aspect ratio is maintained 
  5. $image->thumbnailImage(100, 0); 
  6. echo $image
  7. ?> 

縮略GIF動畫圖片,代碼如下:

  1. <?php 
  2. /* Create a new imagick object and read in GIF */ 
  3. $im = new Imagick("example.gif"); 
  4. /* Resize all frames */ 
  5. foreach ($im as $frame) { 
  6. /* 50x50 frames */ 
  7. $frame->thumbnailImage(50, 50); 
  8. /* Set the virtual canvas to correct size */ 
  9. $frame->setImagePage(50, 50, 0, 0); 
  10. }/* Notice writeImages instead of writeImage */ 
  11. $im->writeImages("example_small.gif", true); 
  12. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 白朗县| 景东| 岳阳县| 津市市| 北宁市| 斗六市| 凤城市| 措美县| 西峡县| 惠来县| 武隆县| 卢氏县| 浦江县| 云林县| 万全县| 林西县| 安吉县| 百色市| 正宁县| 攀枝花市| 泸定县| 宣化县| 于田县| 红河县| 德清县| 广西| 上饶县| 格尔木市| 巧家县| 墨竹工卡县| 平潭县| 廉江市| 无棣县| 鄂尔多斯市| 株洲市| 平湖市| 隆安县| 神农架林区| 海兴县| 峨边| 洛南县|