js php裁剪代码,PHP图片裁切的代码(附带前台的JS裁切代码和CSS样式)

/**

*裁剪头像

*pagram string $OldImagePath 原图片全路径 如C:/wamp/www/1.jpg

*pagram string $NewImagePath 裁切后生成的图片要保存的路径 如C:/wamp/www/2.jpg

*pagram float $WriteX 前台裁切图块与画布的X偏移量

*pagram float $WriteY 前台裁切图块与画布的Y偏移量

*pagram float $CutWidth 前台裁切图块的宽

*pagram float $CutHeight 前台裁切图块的高

*pagram float $CanvasWidth 前台画布(即前台用来被裁切的图片)的宽

*pagram float $CanvasWidth 前台画布(即前台用来被裁切的图片)的高

*pagram float $NewWidth 裁切后生成的图片宽度

*pagram float $NewHeight 裁切后生成的图片高度

**/

function CreatePhotoImage($OldImagePath,$NewImagePath,$WriteX, $WriteY,$CutWidth,$CutHeight,$CanvasWidth=300,$CanvasHeight=300, $NewWidth=220, $NewHeight=140)

{

// 获得图形信息getimagesize参数说明:0(宽),1(高),2(1gif/2jpg/3png),3(width="638" height="340")

$OldImageInfo = getimagesize($OldImagePath);

if ( $OldImageInfo[2] == 1 ) $OldImg = @imagecreatefromgif($OldImagePath);

elseif ( $OldImageInfo[2] == 2 ) $OldImg = @imagecreatefromjpeg($OldImagePath);

else $OldImg = @imagecreatefrompng($OldImagePath);

//将裁切图块与画布的X、Y偏移量 转化成相对实际图片的X、Y偏移量;将裁切图块在画布上的宽高 转化成相对实际图片的宽高;

$WriteX=imagesx($OldImg)/$CanvasWidth*$WriteX;

$WriteY=imagesy($OldImg)/$CanvasHeight*$WriteY;

$CutWidth=imagesx($OldImg)/$CanvasWidth*$CutWidth;

$CutHeight=imagesy($OldImg)/$CanvasHeight*$CutHeight;

$NewImg = imagecreatetruecolor( $NewWidth, $NewHeight );

//创建透明图层

$white = ImageColorAllocate( $NewImg, 255, 255, 255 ); //白色

imagefill( $NewImg, 0, 0, $white);

imageColorTransparent( $NewImg, $white);

//重采样拷贝部分图像并调整大小,具体可以看下PHP函数说明

@imagecopyresampled( $NewImg, $OldImg, 0, 0, $WriteX, $WriteY, $NewWidth,$NewHeight,$CutWidth,$CutHeight);

//保存图片

@imagegif($NewImg, $NewImagePath);

//释放图片资源

@imagedestroy($OldImg);

@imagedestroy($NewImg);

}

define("PATH_ROOT",dirname(__FILE__));

CreatePhotoImage(PATH_ROOT."/1.jpg",PATH_ROOT."/2.jpg",50,50,100,100);

?>

CSS和JS前台的图片裁切代码,因为网站没办法上传附件,需要的可以发我邮箱,邮箱:hetiansu5@163.com

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值