PHP结合JQueryJcrop实现图片裁切实例详解


Posted in PHP onJuly 24, 2014

我们经常可以看到一些网站上有图片剪切的功能,或许你会觉得这一功能炫目华丽,神秘莫测!但是今天介绍的一款专用于图片裁切的插件jquery.Jcrop.min.js就将揭开图片剪切的神秘面纱。使用这个插件可以很方便的实现这一功能,使用时仅需鼠标在图片上圈选出选区,即可把图片裁切成所选部分,非常适合用于头像的裁切编辑功能。

本实例演示分为HTML和php两部分:

第一部分,HTML代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Jcrop实现图片裁剪</title>
<script src="./jquery-1.6.2.min.js"></script>
<script src="./jquery.Jcrop.min.js"></script>
<link rel="stylesheet" href="./jquery.Jcrop.min.css" rel="external nofollow" type="text/css" />
<style type="text/css">
#preview{width:100px;height:100px;border:1px solid #000;overflow:hidden;}
#imghead{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=image);}
</style>
<script language="Javascript">
jQuery(function(){
 jQuery('#imghead').Jcrop({
 aspectRatio: 1,
 onSelect: updateCoords, //选中区域时执行对应的回调函数
 onChange: updateCoords, //选择区域变化时执行对应的回调函数
 });
});
function updateCoords(c)
{
 jQuery('#x').val(c.x); //选中区域左上角横
 jQuery('#y').val(c.y); //选中区域左上角纵坐标
 //jQuery("#x2").val(c.x2); //选中区域右下角横坐标
 //jQuery("#y2").val(c.y2); //选中区域右下角纵坐标
 jQuery('#w').val(c.w); //选中区域的宽度
 jQuery('#h').val(c.h); //选中区域的高度
};
function checkCoords()
{
 if (parseInt(jQuery('#w').val())>0) return true;
 alert('请选择需要裁切的图片区域.');
 return false;
};
</script>
</head>
<body>
<img id="imghead" border=0 src='./image/b4.jpg' />
<form action="crop.php" method="post" onsubmit="return checkCoords();">
 <input type="text" id="x" name="x" />
 <input type="text" id="y" name="y" />
 <input type="text" id="w" name="w" />
 <input type="text" id="h" name="h" />
 <input type="submit" value="提交">
</form>
</body>
</html>

第二部分:PHP处理部分crop.php:

<?php
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
 $targ_w = $targ_h = 150;
 $jpeg_quality = 90;
 $src = './image/b4.jpg';
 $img_r = imagecreatefromjpeg($src);
 $dst_r = ImageCreateTrueColor( $targ_w, $targ_h );
 imagecopyresampled($dst_r,$img_r,0,0,$_POST['x'],$_POST['y'],
 $targ_w,$targ_h,$_POST['w'],$_POST['h']);
 header('Content-type: image/jpeg');
 imagejpeg($dst_r,null,$jpeg_quality);
 exit;
}
?>

补充:jquery.Jcrop.min.js本站下载地址:https://3water.com/jiaoben/24768.html

PHP 相关文章推荐
php 面试碰到过的问题 在此做下记录
Jun 09 PHP
PHP-redis中文文档介绍
Feb 07 PHP
php smarty模板引擎的6个小技巧
Apr 24 PHP
php除数取整示例
Apr 24 PHP
phpmyadmin出现Cannot start session without errors问题解决方法
Aug 14 PHP
PHP生成指定随机字符串的简单实现方法
Apr 01 PHP
PHP cURL初始化和执行方法入门级代码
May 28 PHP
php获取汉字拼音首字母的方法
Oct 21 PHP
Symfony2学习笔记之模板用法详解
Mar 17 PHP
php使用函数pathinfo()、parse_url()和basename()解析URL
Nov 25 PHP
tp5.1 实现setInc字段自动加1
Oct 18 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
Jan 26 PHP
PHP 5.3新增魔术方法__invoke概述
Jul 23 #PHP
php实现与erlang的二进制通讯实例解析
Jul 23 #PHP
PHP使用CURL实现对带有验证码的网站进行模拟登录的方法
Jul 23 #PHP
Yii使用CLinkPager分页实例详解
Jul 23 #PHP
ThinkPHP单字母函数(快捷方法)使用总结
Jul 23 #PHP
PHP中的use关键字概述
Jul 23 #PHP
ThinkPHP实现将SESSION存入MYSQL的方法
Jul 22 #PHP
You might like
PHP 采集程序中常用的函数
2009/12/09 PHP
PHP图片处理类 phpThumb参数用法介绍
2012/03/11 PHP
smarty表格换行实例
2014/12/15 PHP
php array_slice 取出数组中的一段序列实例
2016/11/04 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
2019/04/23 PHP
javascript 混合的构造函数和原型方式,动态原型方式
2009/12/07 Javascript
jQuery学习2 选择器的使用说明
2010/02/07 Javascript
JS Date函数整理方便使用
2013/10/23 Javascript
jQuery中add()方法用法实例
2015/01/08 Javascript
JavaScript之Object类型介绍
2015/04/01 Javascript
jQuery网页选项卡插件rTabs用法实例分析
2015/08/26 Javascript
JS+CSS实现仿支付宝菜单选中效果代码
2015/09/25 Javascript
全面解析Bootstrap弹窗的实现方法
2015/12/01 Javascript
详述JavaScript实现继承的几种方式(推荐)
2016/03/22 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
ES6概念 Symbol.keyFor()方法
2016/12/25 Javascript
JavaScript中闭包的详解
2017/04/01 Javascript
JS实现简单的选择题测评系统代码思路详解(demo)
2017/09/03 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
JavaScript封闭函数及常用内置对象示例
2019/05/13 Javascript
python实现的一个p2p文件传输实例
2014/06/04 Python
python实现C4.5决策树算法
2018/08/29 Python
Python从数据库读取大量数据批量写入文件的方法
2018/12/10 Python
关于不懂Chromedriver如何配置环境变量问题解决方法
2019/06/12 Python
Python进程,多进程,获取进程id,给子进程传递参数操作示例
2019/10/11 Python
Python GUI自动化实现绕过验证码登录
2020/01/10 Python
Django框架models使用group by详解
2020/03/11 Python
Python变量及数据类型用法原理汇总
2020/08/06 Python
大学生年度自我鉴定
2013/10/31 职场文书
财务经理岗位职责
2013/11/09 职场文书
七年级生物教学反思
2014/01/30 职场文书
反腐倡廉演讲稿
2014/05/22 职场文书
政风行风建设整改方案
2014/10/27 职场文书
2015年护士节活动策划方案
2015/05/04 职场文书
初中物理教学反思
2016/02/19 职场文书
Nginx虚拟主机的搭建的实现步骤
2022/01/18 Servers