<?PHP
class HanroadClass
![]()
![]()
{
![]()
/**//**********************
利用PHP的GD库生成缩略图。
支持图片格式:jpg,gif,png
![]()
$source_img: 源图象完整路径
$target_dir: 目标图象目录
$target_name: 目标图象名称
$new_width: 目标图象宽
$new_height: 目标图象高
$if_cut: 是否裁图
1(裁图): 裁图则按设置的大小生成目标图象
0(不裁): 不裁则按比例生成目标图象
———————
QQ:38188141
blog:http://www.cooant.com
**********************/
function HrResize($source_imHPg,$target_dir,$target_name,$new_width,$new_height,$if_cut)
![]()
{
//图片类型
$img_type = strtolower(substr(strrchr($source_img,”.”),1));
![]()
//图象的完整目标路径
$tar_url = $target_dir.”/”.$target_name.”.”.$img_type;
![]()
//初始化图象
if($img_type==”jpg”) $temp_img = imagecreatefromjpeg($source_img);
if($img_type==”gif”) $temp_img = imagecreatefromgif($source_img);
if($img_type==”png”) $temp_img = imagecreatefrompng($source_img);
![]()
//原始图象的宽和高
$old_width = imagesx($temp_img);
$old_height = imagesy($temp_img);
![]()
//改变前后的图象的比例
$new_ratio = $new_width/$new_height;
$old_ratio = $old_width/$old_height;
![]()
//生成新图象的参数
//情况一:裁图 则按设置的大小生成目标图象
if($if_cut==”1″)
![]()
{
$new_width = $new_width;
$new_height = $new_height;
//高度优先
if($old_ratio>=$new_ratio)
![]()
{
$old_width = $old_height*$new_ratio;
$old_height = $old_height;
}
//宽度优先
else
![]()
{
$old_width = $old_width;
$old_height = $old_width/$new_ratio;
}
}
//情况二:不裁图 则按比例生成目标图象
else
![]()
{
$old_width = $old_width;
$old_height = $old_height;
//高度优先
if($old_ratio>=$new_ratio)
![]()
{
$new_width = $new_width;
$new_height = $new_width/$old_ratio;
}
//宽度优先
else
![]()
{
$new_width = $new_height*$old_ratio;
$new_height = $new_height;
}
}
//生成新图片
$new_img = imagecreatetruecolor($new_width,$new_height);
imagecopyresampled($new_img,$temp_img,0,0,0,0,$new_width,$new_height,$old_width,$old_height);
![]()
if($img_type==”jpg”) imagejpeg($new_img,$tar_url);
if($img_type==”gif”) imagegif($new_img,$tar_url);
if($img_type==”png”) imagepng($new_img,$tar_url);
}
}
?>
-
搜索
-
Tags
-
链接表
-
Daily
2012 二月 一 二 三 四 五 六 日 « 十二 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 -
Manager
-
飞雪连天射白鹭,笑书神侠倚碧鸳
-
Latest Posts