如何使用php等比例缩放图片

 更新时间:2016年10月12日 11:02:26   作者:简同学的代码园  
主要介绍了如何使用php等比例缩放图片,可以对原图片提出缩放要求的宽度、缩放的长度.

本文介绍了PHP实现图片压缩方法,读者可以根据具体应用参考或加以改进,直接上代码,imgzip($src,$newwid,$newhei)这个函数带进去的分别是原图片、缩放要求的宽度、缩放的长度。

<?php 
//压缩图片 缩略图
$src= "xiezheng.jpg";
$newwid=640;
$newhei= 480;
function imgzip($src,$newwid,$newhei){
 $imgInfo = getimagesize($src);

 $imgType = image_type_to_extension($imgInfo[2], false);

 $fun = "imagecreatefrom{$imgType}";
//声明图片 打开图片 在内存中
 $image = $fun($src);
//方便配置长度宽度、高度,设置框为变量wid,高度为hei
 $wid=$imgInfo[0];
 $hei=$imgInfo[1];
//判断长度和宽度,以方便等比缩放,规格按照500, 320
 if($wid>$hei){
 $wid=$newwid;
 $hei=$newwid/($wid/$hei);
 }else {
 $wid = $newhei * ($wid / $hei);
 $hei = $newhei;
 }
//在内存中建立一张图片
 $images2 = imagecreatetruecolor($newwid, $newhei); //建立一个500*320的图片

//将原图复制到新建图片中
//imagecopyresampled($dst_image, $src_image, $dst_x, $dst_y, $src_x, $src_y, $dst_w, $dst_h, $src_w, $src_h)

 imagecopyresampled($images2, $image, 0, 0, 0, 0, $wid,$hei, $imgInfo[0],$imgInfo[1]);
//销毁原始图片
 imagedestroy($image);
//直接输出图片文件

 header("Content-type: ".$imgInfo['mime']);
 imagejpeg($images2);
//保存图片 到新文件
 imagejpeg($images2, 'new.jpg', 100); //10代码输出图片的质量 0-100 100质量最高
//销毁
 imagedestroy($images2);
}
imgzip($src,$newwid,$newhei);
?>

希望本文所述对大家对PHP程序设计有所帮助。

相关文章

  • PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍

    PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍

    这篇文章主要介绍了PHP5全版本绕过open_basedir读文件脚本漏洞详细介绍,这个漏洞很久之前(大概5年前)被提出来了,到现在的最新版本中依然存在,需要的朋友可以参考下
    2015-01-01
  • PHP Primary script unknown 解决方法总结

    PHP Primary script unknown 解决方法总结

    在本篇文章里小编给大家整理的是关于PHP Primary script unknown 终极解决方法以及相关知识点,有需要的朋友们参考学习下。
    2019-08-08
  • PHP abstract 抽象类定义与用法示例

    PHP abstract 抽象类定义与用法示例

    这篇文章主要介绍了PHP abstract 抽象类定义与用法,结合实例形式分析了php定义abstract抽象类以及继承抽象类等具体使用技巧,需要的朋友可以参考下
    2018-05-05
  • PHP不使用内置函数实现字符串转整型的方法示例

    PHP不使用内置函数实现字符串转整型的方法示例

    一般php字符串类型的数字如果想转成整型的数字,我们都是采用系统内置的API去做转换,但下面这篇文章主要给大家介绍了关于PHP不使用内置函数实现字符串转整型的方法示例,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-07-07
  • PHP7内核之Reference详解

    PHP7内核之Reference详解

    这篇文章主要介绍了PHP7内核之Reference,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-03-03
  • 关于php程序报date()警告的处理(date_default_timezone_set)

    关于php程序报date()警告的处理(date_default_timezone_set)

    PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function
    2013-10-10
  • php判断终端是手机还是电脑访问网站的思路及代码

    php判断终端是手机还是电脑访问网站的思路及代码

    解下来将写个小程序使用php判断终端是手机还是电脑访问网站,感兴趣的朋友可以参考下哈,希望对你学习php有所帮助
    2013-04-04
  • PHP简单实现欧拉函数Euler功能示例

    PHP简单实现欧拉函数Euler功能示例

    这篇文章主要介绍了PHP简单实现欧拉函数Euler功能,简单说明了欧拉函数的概念、原理,并结合实例形式分析了php实现欧拉函数的相关操作技巧,需要的朋友可以参考下
    2017-11-11
  • PHP设计模式之抽象工厂模式实例分析

    PHP设计模式之抽象工厂模式实例分析

    这篇文章主要介绍了PHP设计模式之抽象工厂模式,结合实例形式分析了php抽象工厂模式的概念、原理、使用方法及相关操作注意事项,需要的朋友可以参考下
    2019-03-03
  • 两级联动select刷新后其值保持不变的实现方法

    两级联动select刷新后其值保持不变的实现方法

    两级联动select刷新后,select值保持不变即点击提交按钮后,页面select中继续维持提交前的值,下面有个不错的示例,大家可以参考下
    2014-01-01

最新评论