今天在使用THINKPHP項目的時候,需要按自定義圖片尺寸做圖片截切,下面就把這個方法分享以做記錄
//縮略圖剪切 //$img 圖片地址 //$url 保存路徑 //$name圖片保存名 function thum_images($img,$width,$height,$url,$name){ //判斷縮略圖是否存在 $goods_thumb_name ="img_thumb_{$width}_{$height}_{$name}"; // 這個商品 已經生成過這個比例的圖片就直接返回了 if(file_exists($url.$goods_thumb_name.'.jpg')) return './'.$url.$goods_thumb_name.'.jpg'; if(file_exists($url.$goods_thumb_name.'.jpeg')) return './'.$url.$goods_thumb_name.'.jpeg'; if(file_exists($url.$goods_thumb_name.'.gif')) return './'.$url.$goods_thumb_name.'.gif'; if(file_exists($url.$goods_thumb_name.'.png')) return './'.$url.$goods_thumb_name.'.png'; $image = new \Think\Image(); $image->open($img); $goods_thumb_name = $goods_thumb_name. '.'.$image->type(); //$image->type()圖片類型 // 按照原圖的比例生成一個最大為150*150的縮略圖並保存為thumb.jpg $image->thumb($width, $height)->save($url.$goods_thumb_name,NULL,100); return "./".$url.$goods_thumb_name; }
例:PHP中直接執行 thum_images($img,150,150,"Uploads/list_img/",$img_id);