基于PHP实现等比压缩图片大小


Posted in PHP onMarch 04, 2016

废话不多说了,直接给大家贴php等比压缩图片大小的相关代码了,具体代码如下所示:

<?php
$im = imagecreatefromjpeg('D:\phpplace\.jpeg');
resizeImage($im,,,'xinde','.jpg');
function resizeImage($im,$maxwidth,$maxheight,$name,$filetype)
{
$pic_width = imagesx($im);
$pic_height = imagesy($im);
echo "start-----------------" ;
if(($maxwidth && $pic_width > $maxwidth) && ($maxheight && $pic_height > $maxheight))
{
if($maxwidth && $pic_width>$maxwidth)
{
$widthratio = $maxwidth/$pic_width;
$resizewidth_tag = true;
}
if($maxheight && $pic_height>$maxheight)
{
$heightratio = $maxheight/$pic_height;
$resizeheight_tag = true;
}
if($resizewidth_tag && $resizeheight_tag)
{
if($widthratio<$heightratio)
$ratio = $widthratio;
else
$ratio = $heightratio;
}
if($resizewidth_tag && !$resizeheight_tag)
$ratio = $widthratio;
if($resizeheight_tag && !$resizewidth_tag)
$ratio = $heightratio;
$newwidth = $pic_width * $ratio;
$newheight = $pic_height * $ratio;
if(function_exists("imagecopyresampled"))
{
$newim = imagecreatetruecolor($newwidth,$newheight);
imagecopyresampled($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height);
}
else
{
$newim = imagecreate($newwidth,$newheight);
imagecopyresized($newim,$im,,,,,$newwidth,$newheight,$pic_width,$pic_height);
}
$name = $name.$filetype;
imagejpeg($newim,$name);
imagedestroy($newim);
}
else
{
$name = $name.$filetype;
imagejpeg($im,$name);
} 
}

以上代码内容是小编给大家介绍的基于PHP实现等比压缩图片大小的相关内容,代码简单易懂,哪里写的不好,欢迎各位大侠多多提出宝贵意见,小编非常乐意。

PHP 相关文章推荐
十天学会php(2)
Oct 09 PHP
PHP经典的给图片加水印程序
Dec 06 PHP
PHP memcache扩展的三种安装方法
Apr 26 PHP
php下统计用户在线时间的一种尝试
Aug 26 PHP
基于php-fpm的配置详解
Jun 03 PHP
MyEclipse常用配置图文教程
Sep 11 PHP
php的4种常见运行方式
Mar 20 PHP
php eval函数一句话木马代码
May 21 PHP
Codeigniter中集成smarty和adodb的方法
Mar 04 PHP
PHP中key和current,next的联合运用实例分析
Mar 29 PHP
ThinkPHP使用getlist方法实现数据搜索功能示例
May 08 PHP
laravel实现登录时监听事件,添加登录用户的记录方法
Sep 30 PHP
Zend Framework教程之模型Model基本规则和使用方法
Mar 04 #PHP
Zend Framework教程之Zend_Layout布局助手详解
Mar 04 #PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
Mar 04 #PHP
PHP使用curl模拟post上传及接收文件的方法
Mar 04 #PHP
PHP生成和获取XML格式数据的方法
Mar 04 #PHP
PHP使用fopen与file_get_contents读取文件实例分享
Mar 04 #PHP
PHP截取IE浏览器并缩小原图的方法
Mar 04 #PHP
You might like
php在线生成ico文件的代码
2007/10/09 PHP
yii框架builder、update、delete使用方法
2014/04/30 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
php页面跳转session cookie丢失导致不能登录等问题的解决方法
2016/12/12 PHP
PHP时间日期增减操作示例【date strtotime实现加一天、加一月等操作】
2018/12/21 PHP
js获取TreeView控件选中节点的Text和Value值的方法
2012/11/24 Javascript
异步动态加载JS并运行(示例代码)
2013/12/13 Javascript
JS中如何设置readOnly的值
2013/12/25 Javascript
Js Jquery创建一个弹出层可加载一个页面
2014/05/08 Javascript
jquery修改网页背景颜色通过css方法实现
2014/06/06 Javascript
jQuery实现向下滑出的平滑下拉菜单效果
2015/08/21 Javascript
Markdown与Bootstrap相结合实现图片自适应属性
2016/05/04 Javascript
Vue 项目中遇到的跨域问题及解决方法(后台php)
2018/03/28 Javascript
Vue监听事件实现计数点击依次增加的方法
2018/09/26 Javascript
vue实现简单的星级评分组件源码
2018/11/16 Javascript
vue中组件的3种使用方式详解
2019/03/23 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
[53:15]Mineski vs iG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
[49:05]OG vs Newbee 2019DOTA2国际邀请赛淘汰赛 胜者组 BO3 第二场 8.21.mp4
2020/07/19 DOTA
python函数缺省值与引用学习笔记分享
2013/02/10 Python
Python Django给admin添加Action的方法实例详解
2019/04/29 Python
Python 实现的 Google 批量翻译功能
2019/08/26 Python
Tensorflow Summary用法学习笔记
2020/01/10 Python
Python中的sys.stdout.write实现打印刷新功能
2020/02/21 Python
PyCharm+PyQt5+QtDesigner配置详解
2020/08/12 Python
简单介绍CSS3中Media Query的使用
2015/07/07 HTML / CSS
英国在线汽车和面包车零件商店:Car Parts 4 Less
2018/08/15 全球购物
化工工艺专业求职信
2013/09/22 职场文书
奉献家乡演讲稿
2014/09/13 职场文书
2015年招聘工作总结
2014/12/12 职场文书
保洁员岗位职责
2015/02/04 职场文书
法定代表人资格证明书
2015/06/18 职场文书
运动会广播稿200字
2015/08/19 职场文书
签证扫盲贴,41个常见签证知识,需要的拿走
2019/08/09 职场文书
js Proxy的原理详解
2021/05/25 Javascript
javascript遍历对象的五种方式实例代码
2021/10/24 Javascript