PHP 图像尺寸调整代码


Posted in PHP onMay 26, 2010
/********************** 
*@filename - path to the image 
*@tmpname - temporary path to thumbnail 
*@xmax - max width 
*@ymax - max height 
*/ 
function resize_image($filename, $tmpname, $xmax, $ymax) 
{ 
$ext = explode(".", $filename); 
$ext = $ext[count($ext)-1]; 
if($ext == "jpg" || $ext == "jpeg") 
$im = imagecreatefromjpeg($tmpname); 
elseif($ext == "png") 
$im = imagecreatefrompng($tmpname); 
elseif($ext == "gif") 
$im = imagecreatefromgif($tmpname); 
$x = imagesx($im); 
$y = imagesy($im); 
if($x <= $xmax && $y <= $ymax) 
return $im; 
if($x >= $y) { 
$newx = $xmax; 
$newy = $newx * $y / $x; 
} 
else { 
$newy = $ymax; 
$newx = $x / $y * $newy; 
} 
$im2 = imagecreatetruecolor($newx, $newy); 
imagecopyresized($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y); 
return $im2; 
}

这里是摘自三水点靠木之前发布的文章。更多的技巧可以参考。
收集的二十一个实用便利的PHP函数代码
PHP 相关文章推荐
PHP 根据IP地址控制访问的代码
Apr 22 PHP
PHP5 的对象赋值机制介绍
Aug 02 PHP
解析php扩展php_curl.dll不加载的解决方法
Jun 26 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
Jun 06 PHP
可以保证单词完整性的PHP英文字符串截取代码分享
Jul 15 PHP
Destoon实现多表查询示例
Aug 21 PHP
php生成固定长度纯数字编码的方法
Jul 09 PHP
php实现微信公众号无限群发
Oct 11 PHP
关于php unset对json_encode的影响详解
Nov 14 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
Mar 29 PHP
PHP safe_mode开启对于PHP系统函数有什么影响
Nov 10 PHP
php TP5框架生成二维码链接
Apr 01 PHP
用PHP将网址字符串转换成超链接(网址或email)
May 25 #PHP
php 编写安全的代码时容易犯的错误小结
May 20 #PHP
Windows7下PHP开发环境安装配置图文方法
May 20 #PHP
Joomla下利用configuration.php存储简单数据
May 19 #PHP
php UTF-8、Unicode和BOM问题
May 18 #PHP
php生成的html meta和link标记在body标签里 顶部有个空行
May 18 #PHP
PHP 工厂模式使用方法
May 18 #PHP
You might like
在JavaScript中调用php程序
2009/03/09 PHP
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
基于php使用memcache存储session的详解
2013/06/25 PHP
PHP-FPM和Nginx的通信机制详解
2019/02/01 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
php封装实现钉钉机器人报警接口的示例代码
2020/08/08 PHP
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
2010/03/12 Javascript
JQuery 插件模板 制作jquery插件的朋友可以参考下
2010/03/17 Javascript
javascript hasFocus使用实例
2010/06/29 Javascript
js onload处理html页面加载之后的事件
2013/10/30 Javascript
ExtJS4中的requires使用方法示例介绍
2013/12/03 Javascript
提高NodeJS中SSL服务的性能
2014/07/15 NodeJs
JavaScript实现简洁的俄罗斯方块完整实例
2016/03/01 Javascript
js仿腾讯QQ的web登陆界面
2016/08/19 Javascript
微信小程序 vidao实现视频播放和弹幕的功能
2016/11/02 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
vue-cli配置环境变量的方法
2018/07/09 Javascript
webpack4与babel配合使es6代码可运行于低版本浏览器的方法
2018/10/12 Javascript
JavaScript ES6箭头函数使用指南
2018/12/30 Javascript
详解几十行代码实现一个vue的状态管理
2019/01/28 Javascript
vue实现瀑布流组件滑动加载更多
2020/03/10 Javascript
Vue项目接入Paypal实现示例详解
2020/06/04 Javascript
实例讲解Python设计模式编程之工厂方法模式的使用
2016/03/02 Python
python 时间戳与格式化时间的转化实现代码
2016/03/23 Python
Python内置random模块生成随机数的方法
2019/05/31 Python
Django ORM 查询表中某列字段值的方法
2020/04/30 Python
python:解析requests返回的response(json格式)说明
2020/04/30 Python
Html5实现iPhone开机界面示例代码
2013/06/30 HTML / CSS
跑鞋、网球鞋、网球拍、服装及装备:Holabird Sports
2016/09/19 全球购物
中专毕业生的自我鉴定
2013/12/01 职场文书
班级学雷锋活动总结
2014/06/26 职场文书
全国优秀教师事迹材料
2014/08/26 职场文书
我的1919观后感
2015/06/03 职场文书
2016学雷锋优秀志愿者事迹材料
2016/02/25 职场文书
基于JavaScript实现省市联动效果
2021/06/22 Javascript
Python几种酷炫的进度条的方式
2022/04/11 Python