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 相关文章推荐
ASP和PHP都是可以删除自身的
Apr 09 PHP
一步一步学习PHP(5) 类和对象
Feb 16 PHP
一步一步学习PHP(6) 面向对象
Feb 16 PHP
PHP 工厂模式使用方法
May 18 PHP
php 目录遍历、删除 函数的使用介绍
Apr 28 PHP
php二维数组排序详解
Nov 06 PHP
yii操作session实例简介
Jul 31 PHP
浅析php适配器模式(Adapter)
Nov 25 PHP
PHP抓取网页、解析HTML常用的方法总结
Jul 01 PHP
php数组生成html下拉列表的方法
Jul 20 PHP
PHP数组操作简单案例分析
Oct 15 PHP
thinkPHP模板引擎用法示例
Dec 08 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
ThinkPHP模板引擎之导入资源文件方法详解
2014/06/18 PHP
PHP往XML中添加节点的方法
2015/03/12 PHP
PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法
2015/11/11 PHP
Laravel5.1数据库连接、创建数据库、创建model及创建控制器的方法
2016/03/29 PHP
thinkphp实现把数据库中的列的值存到下拉框中的方法
2017/01/20 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
bcastr2.0 通用的图片浏览器
2006/11/22 Javascript
用jscript实现新建和保存一个word文档
2007/06/15 Javascript
分享别人写的一个小型js框架
2007/08/13 Javascript
javascript+css 网页每次加载不同样式的实现方法
2009/12/27 Javascript
jquery与prototype框架的详细对比
2013/11/21 Javascript
jQuery:delegate中select()不起作用的解决方法(实例讲解)
2014/01/26 Javascript
node.js中的fs.stat方法使用说明
2014/12/16 Javascript
JavaScript实现N皇后问题算法谜题解答
2014/12/29 Javascript
浅谈javascript构造函数与实例化对象
2015/06/22 Javascript
JS实现仿雅虎首页快捷登录入口及导航模块效果
2015/09/19 Javascript
Jquery EasyUI实现treegrid上显示checkbox并取选定值的方法
2016/04/29 Javascript
详解javascript 正则表达式之分组与前瞻匹配
2018/05/30 Javascript
浅谈微信小程序flex布局基础
2018/09/10 Javascript
解决vue axios跨域 Request Method: OPTIONS问题(预检请求)
2020/08/14 Javascript
JS算法教程之字符串去重与字符串反转
2020/12/15 Javascript
[03:47]2015国际邀请赛第三日现场精彩回顾
2015/08/08 DOTA
利用python库在局域网内传输文件的方法
2018/06/04 Python
selenium python 实现基本自动化测试的示例代码
2019/02/25 Python
Python通用函数实现数组计算的方法
2019/06/13 Python
flask框架自定义url转换器操作详解
2020/01/25 Python
纯CSS3打造动感漂亮时尚的扇形菜单
2014/03/18 HTML / CSS
IE浏览器单独写CSS样式的几种方法
2014/10/14 HTML / CSS
个人自我评价范文
2014/02/05 职场文书
法制宣传标语集锦
2014/06/25 职场文书
天坛导游词
2015/02/02 职场文书
董事长年会致辞
2015/07/29 职场文书
新员工入职感想
2015/08/07 职场文书
个人工作总结(管理人员)范文
2019/08/13 职场文书
详细介绍python操作RabbitMq
2022/04/12 Python
MySQL 原理优化之Group By的优化技巧
2022/08/14 MySQL