基于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 相关文章推荐
我常用的几个类
Oct 09 PHP
php fputcsv命令 写csv文件遇到的小问题(多维数组连接符)
May 24 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
May 12 PHP
PHP return语句的另一个作用
Jul 30 PHP
浅谈php优化需要注意的地方
Nov 27 PHP
thinkphp模板用法和内容输出实例
Nov 28 PHP
PHP自毁程序(慎用)
Jul 09 PHP
中高级PHP程序员应该掌握哪些技术?
Sep 23 PHP
CI框架(CodeIgniter)实现的数据库增删改查操作总结
May 23 PHP
PHP封装的mysqli数据库操作类示例
Feb 16 PHP
PHP面向对象程序设计之构造方法和析构方法详解
Jun 13 PHP
PHP迭代器和生成器用法实例分析
Sep 28 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
实用函数8
2007/11/08 PHP
PHP初学者常见问题集合 修正版(21问答)
2010/03/23 PHP
php实现的常见排序算法汇总
2014/09/08 PHP
php实现登陆模块功能示例
2016/10/20 PHP
PHP压缩图片功能的介绍
2019/03/21 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
jQuery EasyUI API 中文文档 - Form表单
2011/10/06 Javascript
jQuery动态添加、删除元素的方法
2014/01/09 Javascript
jquery 页眉单行信息滚动显示实现思路及代码
2014/06/26 Javascript
javascript中return,return true,return false三者的用法及区别
2015/11/17 Javascript
jQuery实现带玻璃流光质感的手风琴特效
2015/11/20 Javascript
js下将金额数字每三位一逗号分隔
2016/02/19 Javascript
js 自带的sort() 方法全面了解
2016/08/16 Javascript
Node.js开发教程之基于OnceIO框架实现文件上传和验证功能
2016/11/30 Javascript
微信小程序之拖拽排序(代码分享)
2017/01/21 Javascript
JavaScript中Promise的使用详解
2017/02/26 Javascript
10行原生JS实现文字无缝滚动(超简单)
2018/01/02 Javascript
使用async await 封装 axios的方法
2018/07/09 Javascript
通过实例了解Render Props回调地狱解决方案
2020/11/04 Javascript
python字典多条件排序方法实例
2014/06/30 Python
Python RuntimeError: thread.__init__() not called解决方法
2015/04/28 Python
Python模拟百度登录实例详解
2016/01/20 Python
python实现12306火车票查询器
2017/04/20 Python
用python按照图像灰度值统计并筛选图片的操作(PIL,shutil,os)
2020/06/04 Python
Python自定义sorted排序实现方法详解
2020/09/18 Python
推荐10个HTML5响应式框架
2016/02/25 HTML / CSS
京东国际站:JOYBUY
2017/11/23 全球购物
预订旅游活动、景点和旅游:GetYourGuide
2019/09/29 全球购物
党员年终民主评议的自我评价
2013/11/05 职场文书
园林资料员岗位职责
2013/12/30 职场文书
教师职位说明书
2014/07/29 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
师范生免费教育协议书范本
2014/10/09 职场文书
民主评议党员个人自我评价
2015/03/03 职场文书
水知道答案观后感
2015/06/08 职场文书
红灯733-1型14管5波段半导体收音机
2021/04/22 无线电