怎样建设免费网站,中国世界排名前200的大学,一条龙建站,织梦网站统计项目要求将图片上传的任意图片按固定比例进行转换#xff0c;没办法自己就写了一个#xff0c;代码如下#xff1a;public function cropImage($imagePath, $savePath, $scale){$imgHandler $this-model(Picture_Model_Image);$imgHandler-setSrcImg($imagePath);$…项目要求将图片上传的任意图片按固定比例进行转换没办法自己就写了一个代码如下public function cropImage($imagePath, $savePath, $scale){$imgHandler $this-model(Picture_Model_Image);$imgHandler-setSrcImg($imagePath);$imgHandler-setCutType(2);//指明为手工裁切list($scaleW, $scaleH) explode(:, $scale);$imgH $imgHandler-src_h;$imgW $imgHandler-src_w;if(($imgW / $scaleW * $scaleH) $imgH){$cropH ($imgW / $scaleW * $scaleH);$cropW $imgW;}else{$cropW $imgH / $scaleH * $scaleW;$cropH $imgH;}$cropInitX ($imgW - $cropW) / 2;$cropInitY ($imgH - $cropH) / 2;$imgHandler-setSrcCutPosition($cropInitX, $cropInitY);// 源图起点座标$imgHandler-setRectangleCut($cropW, $cropH);// 裁切尺寸$imgHandler-setDstImg($savePath);return $imgHandler-createImg($cropW, $cropH);}大概思路是这样的cropW 和 cropH 是需要裁剪的图片的大小cropInitX 和 cropInitY 是裁剪的初始位置默认是取最中间的位置首先是根据图片的宽 按照比例算出 高按照比例的尺寸 如果算出的高 比图片的高大 那么就图片的高 按照比例算出 宽按照比例的尺寸。得到尺寸后 (用原图的宽/裁剪后的宽)/2 就可以得到裁剪的X座标依次类推。