基于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中将网址转换为超链接的函数
Sep 02 PHP
PHP读取文件并可支持远程文件的代码分享
Oct 03 PHP
php获取汉字首字母的函数
Nov 07 PHP
php实现的返回数据格式化类实例
Sep 22 PHP
php图片水印添加、压缩、剪切的封装类实现
Apr 18 PHP
PHP版本的选择5.2.17 5.3.27 5.3.28 5.4 5.5兼容性问题分析
Apr 04 PHP
PHP读取大文件末尾N行的高效方法推荐
Jun 03 PHP
PHP转换文本框内容为HTML格式的方法
Jul 20 PHP
/etc/php-fpm.d/www.conf 配置注意事项
Feb 04 PHP
php通过各种函数判断0和空
Jul 04 PHP
详解PHP 二维数组排序保持键名不变
Mar 06 PHP
TP5(thinkPHP5)框架使用ajax实现与后台数据交互的方法小结
Feb 10 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中将指针移动到数据集初始位置的实现代码[mysql_data_seek]
2012/11/01 PHP
ThinkPHP模板替换与系统常量及应用实例教程
2014/08/22 PHP
phpnow php探针环境检测代码
2014/11/04 PHP
php注册系统和使用Xajax即时验证用户名是否被占用
2017/08/31 PHP
ExtJS 2.0 实用简明教程之布局概述
2009/04/29 Javascript
跟我一起学写jQuery插件开发方法(附完整实例及下载)
2010/04/01 Javascript
jQuery 在光标定位的地方插入文字的插件
2012/05/10 Javascript
Nodejs极简入门教程(三):进程
2014/10/27 NodeJs
jQuery中Ajax的get、post等方法详解
2015/01/20 Javascript
深入探究JavaScript中for循环的效率问题及相关优化
2016/03/13 Javascript
Javascript中获取浏览器类型和操作系统版本等客户端信息常用代码
2016/06/28 Javascript
js canvas仿支付宝芝麻信用分仪表盘
2016/11/16 Javascript
如何把vuejs打包出来的文件整合到springboot里
2018/07/26 Javascript
使用vuex解决刷新页面state数据消失的问题记录
2019/05/08 Javascript
vue引入微信sdk 实现分享朋友圈获取地理位置功能
2019/07/04 Javascript
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
wxpython中Textctrl回车事件无效的解决方法
2016/07/21 Python
python远程邮件控制电脑升级版
2019/05/23 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
Python通过VGG16模型实现图像风格转换操作详解
2020/01/16 Python
如何基于Python实现数字类型转换
2020/02/07 Python
Python栈的实现方法示例【列表、单链表】
2020/02/22 Python
python网络编程socket实现服务端、客户端操作详解
2020/03/24 Python
利用matplotlib为图片上添加触发事件进行交互
2020/04/23 Python
numpy的Fancy Indexing和array比较详解
2020/06/11 Python
利用Python实现朋友圈中的九宫格图片效果
2020/09/03 Python
Python数据可视化常用4大绘图库原理详解
2020/10/23 Python
美国网上花店:JustFlowers
2017/02/12 全球购物
《美丽的小兴安岭》教学反思
2014/02/26 职场文书
车队司机自我鉴定
2014/03/02 职场文书
创业者迈进成功第一步:如何写创业计划书?
2014/03/22 职场文书
学校实习推荐信
2015/03/27 职场文书
我的1919观后感
2015/06/03 职场文书
学习心理学心得体会
2016/01/22 职场文书
Win11怎么进入安全模式?Windows 11进入安全模式的方法
2021/11/21 数码科技
ubuntu如何搭建vsftpd服务器
2022/12/24 Servers