JQuery PHP图片在线裁剪实例
更新时间:2020年07月27日 15:18:10 投稿:lijiao
这篇文章主要为大家详细介绍了JQuery+PHP图片在线裁剪实例,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
/ * Goofy 2011-11-29 * 图像处理:根据传递过来的坐标参数,x,y,w,h,依次为选取的x坐标,y坐标,w宽度,h高度 通过imagecopy()方法将该区域copy至第一步创建的空白图像中 注意,在创建图像的时候要用imagecreatetruecolor()真彩色,不然用imagecreate()图片会失真 */
自由图片剪切 无比例
<?php /** * Goofy 2011-11-29 * 图像处理:根据传递过来的坐标参数,x,y,w,h,依次为选取的x坐标,y坐标,w宽度,h高度 * 通过imagecopy()方法将该区域copy至第一步创建的空白图像中 * 注意,在创建图像的时候要用imagecreatetruecolor()真彩色,不然用imagecreate()图片会失真 */ //页面传过来的比例 $scale=$_GET['scale']; //下面的属性乘以相应的比例 $x=$_GET['x']*$scale; $y=$_GET['y']*$scale; $w=$_GET['w']*$scale; $h=$_GET['h']*$scale; //源路径 $src=$_GET['src']; //是否继续?如果不继续在这张图片截图,会将源图片删除 $again="off"; if(!empty($_GET['again'])){ $again=$_GET['again']; } //第一步,根据传来的宽,高参数创建一幅图片,然后正好将截取的部分真好填充到这个区域 header("Content-type: image/jpeg"); $target = @imagecreatetruecolor($w,$h) or die("Cannot Initialize new GD image stream"); //第二步,根据路径获取到源图像,用源图像创建一个image对象 $source = imagecreatefromjpeg($src); //第三步,根据传来的参数,选取源图像的一部分填充到第一步创建的图像中 imagecopy( $target, $source, 0, 0, $x, $y, $w, $h); //第四步,保存图像 //截取并组织新路径 $pos_path= strripos($src, "/"); $newPath=substr($src,0,$pos_path-strlen($src))."_new/"; //截取并组织新名称 $pos_name=strripos($src, "."); $newName=substr($src,0,$pos_name); $pos_name_= strripos($newName, "/"); //这里暂时不加后缀“.jpg”,防止有重复的文件,如果有,需要重命名,加了后会不方便 $newName=substr($newName,$pos_name_-strlen($newName)+1)."_"; //生成不带后缀的图片 $file=$newPath.$newName; //附加asc码重命名文件,也可以用随机数,时间等命名,项目需求我不用那些命名方法了 for($i=0;$i<26;$i++){ //如果目录存在 if(is_dir($newPath)){ //如果文件存在,继续循环,直到没有重名的文件 if(is_file($file.chr(97+$i).".jpg")){ continue; }else{ //创建文件 imagejpeg($target,$file.chr(97+$i).".jpg",100); //文件创建完成确定是否删除源文件,off为删除源文件 if($again=="off"){ unlink($src); unset($_SESSION['url']); } break; } }else{ //创建目录 mkdir($newPath); //创建文件 imagejpeg($target,$file.chr(97+$i).".jpg",100); //文件创建完成确定是否删除源文件,off为删除源文件 if($again=="off"){ unlink($src); unset($_SESSION['url']); } break; } } //跳转到首页 Header("Location: index.php"); ?>
以上就是本文的全部内容,希望对大家有所帮助,希望大家继续关注脚本之家的最新内容。
相关文章
jQuery插件pagewalkthrough实现引导页效果
这篇文章主要介绍了jQuery插件pagewalkthrough实现引导页效果的方法和示例代码,十分的详细和实用,有需要的小伙伴可以参考下。2015-07-07jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
在上两篇文章中,我们看到每次要通过 jQuery 的原型增加共享方法的时候,都需要通过 jQuery.fn 一个个进行扩展,非常麻烦.2010-08-08
最新评论