基于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 连接mysql连接被重置的解决方法
Feb 15 PHP
PHP资源管理框架Assetic简介
Jun 12 PHP
PHP设计模式之装饰者模式代码实例
May 11 PHP
YII2.0之Activeform表单组件用法实例
Jan 09 PHP
Zend Framework动作助手FlashMessenger用法详解
Mar 05 PHP
Smarty高级应用之缓存操作技巧分析
May 14 PHP
PHP设计模式之工厂模式与单例模式
Sep 28 PHP
PHP7安装Redis扩展教程【Linux与Windows平台】
Sep 30 PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
Jul 20 PHP
php爬取天猫和淘宝商品数据
Feb 23 PHP
PHP获取HTTP body内容的方法
Dec 31 PHP
ThinkPHP3.2框架自带分页功能实现方法示例
May 13 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
3种平台下安装php4经验点滴
2006/10/09 PHP
PHP JSON格式数据交互实例代码详解
2011/01/13 PHP
PHP删除非空目录的函数代码小结
2013/02/28 PHP
php自动加载autoload机制示例分享
2014/02/20 PHP
最新版本PHP 7 vs HHVM 多角度比较
2016/02/14 PHP
linux下php上传文件注意事项
2016/06/11 PHP
thinkPHP5.0框架API优化后的友好性分析
2017/03/17 PHP
Ajax请求PHP后台接口返回信息的实例代码
2018/08/21 PHP
laravel-admin表单提交隐藏一些数据,回调时获取数据的方法
2019/10/08 PHP
JavaScript.The.Good.Parts阅读笔记(一)假值与===运算符
2010/11/16 Javascript
JavaScript表单通过正则表达式验证电话号码
2014/03/14 Javascript
jquery自定义表格样式
2015/11/23 Javascript
整理Javascript基础入门学习笔记
2015/11/29 Javascript
第二章之Bootstrap 页面排版样式
2016/04/25 Javascript
JS实现淡入淡出图片效果的方法分析
2016/12/20 Javascript
BootStrap 图片样式、辅助类样式和CSS组件的实例详解
2017/01/20 Javascript
在Vue.js中使用Mixins的方法
2017/09/12 Javascript
vue使用pdfjs显示PDF可复制的实现方法
2018/12/14 Javascript
JS实现的图片选择顺序切换和循环切换功能示例【测试可用】
2018/12/28 Javascript
详解微信小程序scroll-view横向滚动的实践踩坑及隐藏其滚动条的实现
2019/03/14 Javascript
[00:10]DOTA2全国高校联赛 以DOTA2会友
2018/05/30 DOTA
python实现问号表达式(?)的方法
2013/11/27 Python
python中PIL安装简单教程
2016/04/21 Python
详解如何在Apache中运行Python WSGI应用
2019/01/02 Python
在windows下使用python进行串口通讯的方法
2019/07/02 Python
在vscode中配置python环境过程解析
2019/09/28 Python
python wxpython 实现界面跳转功能
2019/12/17 Python
tensorflow 重置/清除计算图的实现
2020/01/19 Python
Python写出新冠状病毒确诊人数地图的方法
2020/02/12 Python
《临死前的严监生》教学反思
2014/02/13 职场文书
仓库管理员岗位职责
2014/03/19 职场文书
商业门面租房协议书
2014/11/25 职场文书
2015年化验员工作总结
2015/04/10 职场文书
公司员工体检通知
2015/04/21 职场文书
描述鲁迅的名言整理,一生受用
2019/08/08 职场文书
python ansible自动化运维工具执行流程
2021/06/24 Python