THINKPHP+JS实现缩放图片式截图的实现


Posted in PHP onMarch 07, 2010

作者:杨鑫奇

原始链接:http://www.cnblogs.com/scotoma/archive/2010/03/05/1679477.html

今晚TP论坛的一位大哥加我了,说也遇到这个方面的问题,呵呵!想想其实很多东西都遇到了,是不是应该分享出来呢?其实自己的很多东西都是别人那来的,取之于网络用之于网络!只有大家多分享,才能够提高!

实现方式

上传图片 -- 保存并显示图片 -- JS获取缩略图参数 -- 提交位置参数 -- 图片缩放保存类处理图片 -- 保存截取的图片--更新数据库 -- 跳转

 

上几张截图

THINKPHP+JS实现缩放图片式截图的实现

 

以下是实例截图

THINKPHP+JS实现缩放图片式截图的实现

 

THINKPHP+JS实现缩放图片式截图的实现

 

THINKPHP+JS实现缩放图片式截图的实现

主要的实现代码

public function cutimg() 
{ 
$result = $this->upload('temp'); 
if (!is_array($result)) 
{ 
$this->redirect('index'); 
} 
else 
{ 
$this->assign('imgurl', '__ROOT__/' . C('ATTACHDIR') . '/temp/' . $result[0]['savename']); 
$this->assign('imgname', $result[0]['savename']); 
$this->display(); 
} 
}

public function setavatar() 
{ 
if (!empty($_REQUEST['cut_pos'])) 
{ 
// import('ORG.Util.ImageResize'); 
require('ImageResize.class.php'); 
$imgresize = new ImageResize(); 
// use the full path 
$url = C('ATTACHDIR') . '/temp/' . trim($_POST['imgname']); 
$imgresize->load($url); 
dump($url); 
$posary = explode(',', $_REQUEST['cut_pos']); 
foreach($posary as $k => $v) $posary[$k] = intval($v); 
if ($posary[2] > 0 && $posary[3] > 0) $imgresize->resize($posary[2], $posary[3]); 
dump($posary); 
// create filename rule 
$uico = time() . '.jpg'; 
dump($uico); 
$path = C('AVATAR'); 
// save 120*120 image 
$imgresize->cut(120, 120, intval($posary[0]), intval($posary[1])); 
$large = 'l_' . $uico; 
$imgresize->save($path . $large); 
echo '<img src="'.__ROOT__.'/' . $path . $large . '" />'; 
// update database 
} 
else 
{ 
// error reporting 
} 
}

源代码下载地址: 点击下载 其他的自己去完善了,运行需要TP框架请访问 http://www.thinkphp.cn 下载,然后下载扩展包,因为用到Upload类!
PHP 相关文章推荐
PHP 事务处理数据实现代码
May 13 PHP
php学习笔记 数组遍历实现代码
Jun 09 PHP
三个类概括PHP的五种设计模式
Sep 05 PHP
PHP JSON出错:Cannot use object of type stdClass as array解决方法
Aug 16 PHP
php数组保存文本与文本反编成数组实例
Nov 13 PHP
php实现多城市切换特效
Aug 09 PHP
Zend Framework教程之Application用法实例详解
Mar 14 PHP
PHP模板引擎Smarty中变量的使用方法示例
Apr 11 PHP
非常实用的php验证码类
May 15 PHP
浅谈php中变量的数据类型判断函数
Mar 04 PHP
php curl操作API接口类完整示例
May 21 PHP
解决laravel-admin 自己新建页面里 js 需要刷新一次的问题
Oct 03 PHP
PHP用mysql数据库存储session的代码
Mar 05 #PHP
PHP 采集程序原理分析篇
Mar 05 #PHP
PHP 一个页面执行时间类代码
Mar 05 #PHP
一步一步学习PHP(8) php 数组
Mar 05 #PHP
一步一步学习PHP(7) php 字符串相关应用
Mar 05 #PHP
PHP 创建文件(文件夹)以及目录操作代码
Mar 04 #PHP
php &amp;&amp; 逻辑与运算符使用说明
Mar 04 #PHP
You might like
改德生G88 - 加装等响度低音提升电路
2021/03/02 无线电
剖析 PHP 中的输出缓冲
2006/12/21 PHP
使用TinyButStrong模板引擎来做WEB开发
2007/03/16 PHP
PHP读取MySQL数据代码
2008/06/05 PHP
深入php多态的实现详解
2013/06/09 PHP
PHP Session机制简介及用法
2014/08/19 PHP
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
2015/09/23 PHP
PHP中for循环与foreach的区别
2017/03/06 PHP
php设计模式之适配器模式原理、用法及注意事项详解
2019/09/24 PHP
jquery 页面全选框实践代码
2010/04/02 Javascript
DOM2非标准但却支持很好的几个属性小结
2012/01/21 Javascript
JavaScript取得WEB安全颜色列表的方法
2015/07/14 Javascript
小心!AngularJS结合RequireJS做文件合并压缩的那些坑
2016/01/09 Javascript
JavaScript基本语法学习教程
2016/01/14 Javascript
jquery属性,遍历,HTML操作方法详解
2016/09/17 Javascript
JS匿名函数实例分析
2016/11/26 Javascript
通过修改360抢票的刷新频率和突破8车次限制实现方法
2017/01/04 Javascript
Bootstrap table使用方法总结
2017/05/10 Javascript
JavaScript面向对象的程序设计(犯迷糊的小羊)
2018/05/27 Javascript
element-ui 的el-button组件中添加自定义颜色和图标的实现方法
2018/10/26 Javascript
JS实现的全选、全不选及反选功能【案例】
2019/02/19 Javascript
vue项目打包之开发环境和部署环境的实现
2020/04/23 Javascript
[02:05]DOTA2完美大师赛趣味视频之看我表演
2017/11/18 DOTA
Python判断列表是否已排序的各种方法及其性能分析
2016/06/20 Python
python实现的AES双向对称加密解密与用法分析
2017/05/02 Python
Python开发的实用计算器完整实例
2017/05/10 Python
Python 转换RGB颜色值的示例代码
2019/10/13 Python
在Python中实现函数重载的示例代码
2019/12/12 Python
英国健身专家:WIT Fitness
2021/02/09 全球购物
企业内控岗位的职责
2014/02/07 职场文书
学习党的群众路线实践活动思想汇报
2014/09/12 职场文书
党的群众路线教育实践活动剖析材料
2014/09/30 职场文书
2015重阳节敬老活动总结
2015/07/29 职场文书
严以律己专题学习研讨会发言材料
2015/11/09 职场文书
z-index不起作用
2021/03/31 HTML / CSS