<?php
/** 
 * UQ云商：	www.uqcms.com  
 * 联系QQ：	2200631718 
 * 可免费商用，需要留UQ云商链接作为交换，只首页底部留取即可，不影响使用。
 */

defined('IN_UQ') or exit('Access Denied'); class image { private static $uq0; public static function init(){ if (is_null(self::$uq0)){ self::$uq0 = new self(); } return self::$uq0; } var $uq1 = ''; var $uq2 = ''; function __construct() { } private function loadImg() { $uq3 = $this->ext(); switch($uq3){ case 'jpg': return imagecreatefromJPEG($this->srcImg); break; case 'jpeg': return imagecreatefromJPEG($this->srcImg); break; case 'png': return imagecreatefromPNG($this->srcImg); break; case 'gif': return imagecreatefromGIF($this->srcImg); break; } } public function crop($uq4, $x1, $y1, $uq7, $uq8, $uq9 = '') { $this->srcImg = $uq4; $uq10 = $this->loadImg(); $uq11 = imagecreatetruecolor($uq7, $uq8); imagecopy($uq11, $uq10, 0, 0, $x1, $y1, $uq7, $uq8); $uq9 = $uq9.'.'.$this->ext(); $this->outImg($uq11, $uq9); return $uq9; } public function thumb($uq4, $uq12 = 0, $uq13 = 0, $uq9 = null) { $this->srcImg = UQCMS_PATH.$uq4; list($uq14, $uq15) = getimagesize($this->srcImg); if($uq12 != 0 && $uq13 == 0){ $uq16 = $uq14/$uq12; $uq12 = $uq14/$uq16; $uq13 = $uq15/$uq16; }elseif($uq12 == 0 && $uq13 != 0){ $uq16 = $uq15/$uq13; $uq12 = $uq14/$uq16; $uq13 = $uq15/$uq16; }elseif($uq12 != 0 && $uq13 != 0){ if($uq12 > $uq13){ $uq16 = $uq14/$uq12; $uq12 = $uq14/$uq16; $uq13 = $uq15/$uq16; }elseif($uq12 < $uq13){ $uq16 = $uq15/$uq13; $uq12 = $uq14/$uq16; $uq13 = $uq15/$uq16; }else{ $uq16 = $uq15/$uq13; $uq12 = $uq14/$uq16; $uq13 = $uq15/$uq16; } } if($uq14 <= $uq12 || $uq15 <= $uq13){ $uq12 = $uq14; $uq13 = $uq15; } $uq2 = $this->loadImg(); $uq17 = imagecreatetruecolor($uq12, $uq13); imagecopyresampled($uq17, $uq2, 0, 0, 0, 0, $uq12, $uq13, $uq14, $uq15); $uq9 = $uq9.'.'.$this->ext(); $this->outImg($uq17, $uq9); return $uq9; } private function outImg($uq18, $uq19 = null) { $uq20 = $this->ext(); switch ($uq20) { case 'jpg': ImageJPEG($uq18, $uq19, 80); break; case 'jpeg': ImageJPEG($uq18, $uq19, 80); break; case 'gif': ImageGIF($uq18, $uq19); break; case 'png': ImagePNG($uq18, $uq19); break; } @ImageDestroy($uq19); @ImageDestroy($uq18); } private function ext() { $uq21 = pathinfo($this->srcImg); $uq22 = $uq21['extension']; $uq23 = explode(',', cfg['storage_type']); if(in_array($uq22, $uq23)){ return $uq22; }else{ return false; } } } 