• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆 - 298  文章 - 377  trackbacks - 0
            <2007年8月>
            2930311234
            567891011
            12131415161718
            19202122232425
            2627282930311
            2345678

            常用鏈接

            留言簿(34)

            隨筆分類

            隨筆檔案

            文章檔案

            相冊

            收藏夾

            搜索

            •  

            最新評論

            閱讀排行榜

            評論排行榜

              1 <?php
              2     /*
              3     ** author 李攀
              4     ** email 1061589921@qq.com
              5     ** 實現移動開發中,多張圖片排列.
              6     */
              7     $file = './234.png';
              8     $Image = new image($file);
              9     $width = $Image->getImageWidth();
             10     $height = $Image->getImageHeight();
             11     //判斷該相片是否長寬相等
             12     if($width != $height){
             13         //不相等則先以最小邊為長度截取圖片中心部分
             14         if($width > $height){
             15             $x = ($width - $height) / 2;
             16             $y = 0;
             17             $width = $height;
             18         }else{
             19             $y = ($height - $width) / 2;
             20             $x = 0;
             21             $height = $width;
             22         }
             23         $Image->crop($file,$width,$height,$x,$y,$file);
             24     }
             25 
             26     //等比例縮放圖片
             27     $dst_w = 100;
             28     $dst_h = 100;
             29     $Image->reduce($file,$dst_w,$dst_h,$file);
             30 ?>
             31 <?php
             32 class image{
             33     private $_width;
             34     private $_height;
             35     private $_type;
             36     //實例化時獲取圖片信息
             37      function __construct($file_url){
             38          $info = getimagesize($file_url);
             39          $this->_width = $info[0];
             40          $this->_height = $info[1];
             41          $type = $info['mime'];
             42          $type = explode('/',$type);
             43          $this->_type = $type[1];
             44      }
             45      //返回圖片類型
             46      public function getImageType(){
             47          return $this->_type;
             48      }
             49      //返回圖片寬度
             50     public function getImageWidth(){
             51         return $this->_width;
             52     }
             53     //返回圖片高度
             54     public function getImageHeight(){
             55         return $this->_height;
             56     }
             57 
             58     /*
             59     **圖片裁剪
             60     ** $tmp_image源文件
             61     ** $dst_w 裁剪后的圖片的寬度
             62     ** $dst_h 裁剪后的圖片的高度
             63     ** $x 在源圖的$x處坐標開始裁剪
             64     ** $y 在源圖的$y處坐標開始裁剪 
             65     */
             66     public function crop($tmp_image,$dst_w,$dst_h,$x,$y,$path){
             67         switch($this->_type){
             68             case 'jpeg':
             69                 $src = imagecreatefromjpeg($tmp_image);
             70                 break;
             71             case 'gif':
             72                 $src = imagecreatefromgif($tmp_image);
             73                 break;
             74             case 'png':
             75                 $src = imagecreatefrompng($tmp_image);
             76                 break;
             77         }
             78 
             79         $dst = imagecreatetruecolor($dst_w,$dst_h);
             80         $color = imagecolorallocate($dst,255,255,255);
             81         imagecolortransparent($dst,$color);
             82         imagefill($dst,0,0,$color);
             83         $bool = imagecopyresampled($dst,$src, 0,0,$x,$y$dst_w,$dst_h,$dst_w,$dst_h);
             84         switch($this->_type){
             85             case 'jpeg':
             86                 imagejpeg($dst,$path,100);
             87                 break;
             88             case 'gif':
             89                 imagegif($dst,$path);
             90                 break;
             91             case 'png':
             92                 imagepng($dst,$path);
             93                 break;
             94         }
             95 
             96         imagedestroy($src);
             97         imagedestroy($dst);
             98         return $bool;
             99     }
            100 
            101     /*
            102     ** 等比例縮放圖片
            103     ** $tmp_image源圖
            104     ** $dst_w 縮放后的圖片寬度
            105     ** $dst_h 縮放后的圖片高度
            106     */
            107     public function reduce($tmp_image,$dst_w,$dst_h,$path){
            108         switch($this->_type){
            109             case 'jpeg':
            110                 $src = imagecreatefromjpeg($tmp_image);
            111                 break;
            112             case 'gif':
            113                 $src = imagecreatefromgif($tmp_image);
            114                 break;
            115             case 'png':
            116                 $src = imagecreatefrompng($tmp_image);
            117                 break;
            118         }
            119         $imagex = imagesx($src);
            120         $imagey = imagesy($src);
            121         $dst = imagecreatetruecolor($dst_w,$dst_h);
            122         $color = imagecolorallocate($dst,255,255,255);
            123         imagecolortransparent($dst,$color);
            124         imagefill($dst,0,0,$color);
            125         $bool = imagecopyresampled($dst,$src,0,0,0,0,$dst_w,$dst_h,$imagex,$imagey);
            126         switch($this->_type){
            127             case 'jpeg':
            128                 imagejpeg($dst,$path,100);
            129                 break;
            130             case 'gif':
            131                 imagegif($dst,$path);
            132                 break;
            133             case 'png':
            134                 imagepng($dst,$path);
            135                 break;
            136         }
            137         imagedestroy($src);
            138         imagedestroy($dst);
            139         return $bool;
            140     }
            141 }
            @import url(http://www.shnenglu.com/CuteSoft_Client/CuteEditor/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css);
            posted on 2016-08-31 11:52 聶文龍 閱讀(344) 評論(0)  編輯 收藏 引用
            久久亚洲AV永久无码精品| 精品国产婷婷久久久| 77777亚洲午夜久久多人| 亚洲狠狠婷婷综合久久蜜芽| 日韩乱码人妻无码中文字幕久久| 精品久久久久久久无码| 久久人人爽人人精品视频| 久久精品国产亚洲αv忘忧草| 久久久久久午夜成人影院| 国产精品嫩草影院久久| 一本色道久久88精品综合| 一本一道久久精品综合| 亚洲精品午夜国产VA久久成人| 国产欧美久久久精品| 精品国产乱码久久久久久人妻| 91久久精品国产免费直播| 成人久久免费网站| 亚洲精品无码久久久| 99久久亚洲综合精品成人| 久久亚洲精精品中文字幕| 久久午夜福利无码1000合集| 国产精品成人99久久久久 | 午夜精品久久久久久99热| 久久精品成人欧美大片| 91精品免费久久久久久久久| 精品久久久噜噜噜久久久| 7777久久久国产精品消防器材| 亚洲国产高清精品线久久| 日本三级久久网| 国产99久久九九精品无码| 97久久精品午夜一区二区| 久久AV无码精品人妻糸列| 欧美一区二区久久精品| 免费精品久久天干天干| 久久久一本精品99久久精品88| 久久亚洲中文字幕精品一区| 久久人人爽人爽人人爽av | 久久天天日天天操综合伊人av | 久久精品国产男包| 精产国品久久一二三产区区别| 国产成年无码久久久免费|