亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

Chinaunix

標(biāo)題: ImageMagick 實(shí)例 [打印本頁(yè)]

作者: netwenk    時(shí)間: 2011-12-22 08:54
標(biāo)題: ImageMagick 實(shí)例



  1. <?php

  2. function resize($src,$destSrc, $w,$h)
  3.     {
  4.      $temp=pathinfo($src);
  5.         $name=$temp["basename"];
  6.         $dir=$temp["dirname"];
  7.         $savepath = empty($destSrc) ? "{$dir}/{$name}.thumb.jpg" : $destSrc;
  8.         
  9.         
  10.         $image = new Imagick();
  11.         $image->newImage($w, $h, new ImagickPixel('white'));
  12.         $image->setImageFormat('png');
  13.         
  14.         $imagick = new Imagick();
  15.         $imagick->readImage($src);
  16.         $width = $imagick->getImageWidth();
  17.         $height = $imagick->getImageHeight();

  18.         if ($width > $w || $height > $h) {
  19.             $imagick->resizeImage($w, $h, Imagick::FILTER_CATROM, 1, true);
  20.         }
  21.         
  22.         $imagick->setImageFormat('JPEG');
  23.         $imagick->setImageCompression(Imagick::COMPRESSION_JPEG);
  24.         $a = $imagick->getImageCompressionQuality() * 0.75;
  25.         if ($a == 0) {
  26.             $a = 75;
  27.         }
  28.         $imagick->setImageCompressionQuality($a);
  29.         $imagick->stripImage();
  30.         
  31.         $per1 = round($width/$height,2);//計(jì)算原圖長(zhǎng)寬比
  32.         $per2 = round($w/$h,2);//計(jì)算縮略圖長(zhǎng)寬比
  33.         
  34.         if($per1 == $per2){
  35.             $imagick->writeImage($savepath);
  36.         }else{
  37.             if($per1 > $per2){
  38.                 $x=0;
  39.                 $y=($h - $imagick->getImageHeight())/2;//垂直居中
  40.             }elseif($per1 < $per2){        
  41.                 $x=($w - $imagick->getImageWidth())/2;//水平居中
  42.                 $y=0;
  43.             }else{
  44.              $x = $y = 0;
  45.             }
  46.             $image->compositeImage($imagick, $imagick->getImageCompose(), $x, $y);
  47.             $image->writeImage($savepath);
  48.         }
  49.         
  50.         return $savepath;
  51.     }
  52. ?>






歡迎光臨 Chinaunix (http://www.72891.cn/) Powered by Discuz! X3.2