PHP 等比例缩放图片详解及实例代码

来源:本网整理

可以。 等比例缩放的方法是: 1、载入选区--自由变换。如下图: 2、按住shift+alt键,使用鼠标调整大小,这种情况下,选区会按照等比例的方法进行缩放的。

s">

PHP 等比例缩放图片详解及实例代码

投稿:lqh 字体:[增加 减小] 类型:转载 时间:2016-09-18 我要评论 这篇文章主要介绍了PHP 等比例缩放图片的相关资料 ">

直接上代码,imgzip($src,$newwid,$newhei)这个函数带进去的分别是原图片、缩放要求的宽度、缩放的长度。代码都备注了,不懂可以留言哈哈

方法 1,上传地址随机生成,指向到不同的服务器,以达到每个服务器上传压力和存储负载均衡 2,上传服务器上有事件监听事件,有新文件上传,可以使用rsync等协议将文件推到其它服务器 3,通过CDN等方式在有需要的时候,将文件同步到其它服务器

<?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[0]); //销毁原始图片 imagedestroy($image); //直接输出图片文件 header("Content-type: ".$imgInfo[‘mime‘]); imagejpeg($images2); //保存图片 到新文件 imagejpeg($images2, ‘new.jpg‘, 100); //10代码输出图片的质量 0-100 100质量最高 //销毁 imagedestroy($images2); } imgzip($src,$newwid,$newhei); ?>

首先说一下思路,首先你要判断图片的宽度,这需要用到一个函数,个人比较喜欢用getimagesize() 其次是等比例绽放,需要用到imagecopyresized(当然还有其他函数) 注意:我这里用到的是gd库 实现: 写一个函数或者类都行,我这里就以面向过程的

 效果

在居民小区里访谈农民工。问及最看不惯小区居民的是什么行为?回答:养狗!有人牵着狗,把狗当儿子;有的狗像野狗到处乱窜,很吓人;有的狗还仗势欺人;特别是狗屎打扫起来很烦人。他们不理解,为啥城市人会对狗情有独钟狗有可能成为新的环境祸害。有人说穷人养猪,富人养狗。狗多了,意味着富人多了!?

压缩前

压缩后

以上就是对PHP 等比例缩放图片的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

很有趣的问题。这是关于新老旗舰的选择问题,而在魅族里选择新老旗舰,更是比较尴尬的问题。外观对比PRO6Plus的设计元素还是非常魅族范的,5.7寸大屏配上还不错的屏占比,给人的视觉冲击感很强。而背部的一刀切纳米注塑天线条、环形闪光灯和激光对焦模块等元素延续了PRO6的设计,总的来说是比较主流大气的设计。而在了魅族PRO7上面,正面的变化很小,魅族把光线传感器/红外传感器藏在了听筒里面,颇有种向锤子致敬的感觉,而小编觉得这样的设计很棒。到了背面,PRO7的变化就大了。PRO7首次加入了画屏功能,能够实现预览、自拍显示等等功能,而将双摄藏进画屏里,弱化双摄的存在感,也是很聪明的设计。不过在小编看来

扩展阅读,根据您访问的内容系统为您准备了以下内容,希望对您有帮助。

跪求PHP上传图片并按比例缩放到一定尺寸的程序,非常感谢

public function upimges(){

    $filename = time();

    header("Content-Type:text/html;charset=utf-8");

    $upload = new Upimage('','','','',$filename);

    //设置上传文件大小

    $upload->maxSize  = 100000000000000 ;

  //  $upload->saveRule =microtime().'_'.mt_rand(1000,9999);

    //上传文件命名规则time uniqid com_create_guid 等

    //  $upload->$saveRule = time() ;

    //设置上传文件类型

    $upload->allowExts  = explode(',','jpg,gif,png,jpeg');

    //设置附件上传目录

    $upload->savePath =  './data/attached/skp/'.$_SESSION['formtoken'].'/';

    $upload->thumb  =  true;

    // 设置引用图片类库包路径

    $upload->imageClassPath = './Image.php';

    //设置需要生成缩略图的文件后缀

    $upload->thumbPrefix = 'thumb_,thumbm_,thumbl_,thumbs_';//生产4张缩略图

    //设置缩略图最大宽度

    $upload->thumbMaxWidth = '960,480,120,64';

    //设置缩略图最大高度

    $upload->thumbMaxHeight = '960,480,120,64';

    //删除原图

    $upload->thumbRemoveOrigin = false;

    if(!$upload->upload()) {

        $data['tip'] = $upload->getErrorMsg();

        $data['status'] = '0';

    }else{

        $info = $upload->getUploadFileInfo();

        $data['counts'] = count($info);

        $data['status'] = '1';

        $data['tip'] = '上传成功';

        $data['info'] = $info;

    }

    echo json_encode($data);

    }

这个是代码和所引用的

php等比例缩放图片原理

他的else可以是 $width存在 && ($width_orig > $height_orig) 真与真的else有假与真,真与假,假与假;前面定义了$width = 200;那也就是说else肯定就是$width_orig > $height_orig了;

这样就可以判断出等比大小

如何实现php图片等比例缩放

$imgsrc=$image_name;

$imgdst=$image_name;

list($width,$height,$type)=getimagesize($imgsrc); 

$new_width = ($width>600?600:$width)*0.9; 

$new_height =($height>600?600:$height)*0.9; 

$giftype=check_gifcartoon($imgsrc); 

$image_wp=imagecreatetruecolor($new_width, $new_height); 

$image = imagecreatefromgif($imgsrc); 

imagecopyresampled($image_wp, $image, 0, 0, 0, 0, $new_width, $new_height, $width, $height); 

imagejpeg($image_wp, $imgdst,75); 

imagedestroy($image_wp); 

本回答被网友采纳

php图片可以等比例的缩放吗

PHP中图片等比缩放的实例,需要的朋友可以参考一下

<?php 

     //图片的等比缩放 

     //因为PHP只能对资源进行操作,所以要对需要进行缩放的图片进行拷贝,创建为新的资源 

     $src=imagecreatefromjpeg('a.jpg'); 

     //取得源图片的宽度和高度 

     $size_src=getimagesize('a.jpg'); 

     $w=$size_src['0']; 

     $h=$size_src['1']; 

     //指定缩放出来的最大的宽度(也有可能是高度) 

     $max=300; 

     //根据最大值为300,算出另一个边的长度,得到缩放后的图片宽度和高度 

     if($w > $h){ 

         $w=$max; 

         $h=$h*($max/$size_src['0']); 

     }else{ 

         $h=$max; 

         $w=$w*($max/$size_src['1']); 

     } 

       

     //声明一个$w宽,$h高的真彩图片资源 

     $image=imagecreatetruecolor($w, $h); 

       

     //关键函数,参数(目标资源,源,目标资源的开始坐标x,y, 源资源的开始坐标x,y,目标资源的宽高w,h,源资源的宽高w,h) 

     imagecopyresampled($image, $src, 0, 0, 0, 0, $w, $h, $size_src['0'], $size_src['1']); 

     //告诉浏览器以图片形式解析 

     header('content-type:image/png'); 

     imagepng($image); 

     //销毁资源 

     imagedestroy($image); 

 ?>

php 怎么实现不等比例缩放图片?

我已经实现了其功能,并将其优化成了一个函数,且都有注释。

经测试,得正确结果,可随意设置缩放后图片的宽与高。

不知阁下愿意加点分不?追问已追加分数。。追答

见附件。收费5财富值,不想让其他人无偿获得,望理解。

若有任何疑问,可再询问。

  • 本文相关:
  • PHP 接入支付宝即时到账功能
  • 手把手编写PHP框架 深入了解MVC运行流程
  • PHP 中 DOMDocument保存xml时中文出现乱码问题的解决方案
  • php微信公众账号开发之五个坑(二)
  • iOS10推送通知开发教程
  • php支付宝在线支付接口开发教程
  • php5.2的curl-bug 服务器被php进程卡死问题排查
  • PHP简单创建压缩图的方法
  • php处理单文件、多文件上传代码分享
  • PHP中explode函数和split函数的区别小结
  • 免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved