php图片缩放实现方法


Posted in PHP onFebruary 20, 2014

php基础练习--图片缩放:

<?php
    /**
    * image zoom.
    */
    function imageZoom($filename, $w, $h) {
        /* Arguments meaning */
        /* $filename: the source of the name */
        /* $w: you want get the image's width */
        /* $h: you want get the imgage's height */
        $arr = getimagesize($filename);
        $src_w = $arr[0];
        $src_h = $arr[1];
        $src_t = $arr[2];
        /*1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),
= TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,
= IFF,15 = WBMP,16 = XBM*/
        $src_m = $arr['mime'];
        $src_img = imagecreatefromjpeg($filename);
        if (($w / $src_w) >($h / $src_h)) {
            $bili = $h / $src_h;
        } else {
            $bili = $w / $src_h;
        }
        $dst_w = $src_w * $bili;
        $dst_h = $src_h * $bili;
        $dst_img = imagecreatetruecolor($dst_w, $dst_h);
        imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dst_w, $dst_h, $src_w, $src_h);
        header("content-type:{$src_m}");
        switch ($src_t) {
            case 1:
                $imgout = "imagegif";
                break;
            case 2:
                $imgout = "imagejpeg";
                break;
            case 3:
                $imgout = "imagepng";
                break;
            default:
                echo "The type was wrong!";
                break;
        }
        $dst_filename = "s_".$filename;
        $imgout($dst_img, $dst_filename);
        imagedestroy($dst_img);
    }
    $filename = 'gg.jpg';
    imageZoom($filename, 100, 200);

核心:<1>注意缩放比例如何得到,虽然这样得到的图片可能会与预想的有点差别,但是最起码保证了缩放比例。

 <2>类型的控制。

PHP 相关文章推荐
php trim 去除空字符的定义与语法介绍
May 31 PHP
Windows下利用Gvim写PHP产生中文乱码问题解决方法
Apr 20 PHP
php中利用post传递字符串重定向的实现代码
Apr 21 PHP
discuz目录文件资料汇总
Dec 30 PHP
php实现utf-8转unicode函数分享
Jan 06 PHP
PHP数组函数知识汇总
May 12 PHP
浅谈PHP中pack、unpack的详细用法
Mar 12 PHP
php使用lua+redis实现限流,计数器模式,令牌桶模式
Apr 04 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
Aug 13 PHP
Yii框架常见缓存应用实例小结
Sep 09 PHP
php 使用 __call实现重载功能示例
Nov 18 PHP
基于PHP的微信公众号的开发流程详解
Aug 07 PHP
php跨域cookie共享使用方法
Feb 20 #PHP
PHP中redis的用法深入解析
Feb 20 #PHP
MongoDB在PHP中的常用操作小结
Feb 20 #PHP
PHP判断远程图片或文件是否存在的实现代码
Feb 20 #PHP
Php无限级栏目分类读取的实现代码
Feb 19 #PHP
Php中使用Select 查询语句的实例
Feb 19 #PHP
php简单的留言板与回复功能具体实现
Feb 19 #PHP
You might like
php构造函数的继承方法
2015/02/09 PHP
PHP数组操作――获取数组最后一个值的方法
2015/04/14 PHP
php中JSON的使用方法
2015/04/30 PHP
php中通过eval实现字符串格式的计算公式
2017/03/18 PHP
PHP接口类(interface)的定义、特点和应用示例
2020/05/18 PHP
一个加载js文件的小脚本
2007/06/28 Javascript
Javascript中string转date示例代码
2013/11/01 Javascript
jQuery计算textarea中文字数(剩余个数)的小程序
2013/11/28 Javascript
js导航栏单击事件背景变换示例代码
2014/01/13 Javascript
简单的ajax连接库分享(不用jquery的ajax)
2014/01/19 Javascript
javascript中scrollTop详解
2015/04/13 Javascript
js+html5通过canvas指定开始和结束点绘制线条的方法
2015/06/05 Javascript
jquery实现简单的自动播放幻灯片效果
2015/06/13 Javascript
jquery实现表格隔行换色效果
2015/11/19 Javascript
JS实现淡入淡出图片效果的方法分析
2016/12/20 Javascript
ES6解构赋值的功能与用途实例分析
2017/10/31 Javascript
vue中使用sessionStorage记住密码功能
2018/07/24 Javascript
Vue $emit $refs子父组件间方法的调用实例
2018/09/12 Javascript
vue使用keep-alive保持滚动条位置的实现方法
2019/04/09 Javascript
[01:08:57]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第二场
2014/05/24 DOTA
python通过get,post方式发送http请求和接收http响应的方法
2015/05/26 Python
tensorflow 获取模型所有参数总和数量的方法
2018/06/14 Python
OpenCV-Python 摄像头实时检测人脸代码实例
2019/04/30 Python
基于pandas向csv添加新的行和列
2020/05/25 Python
使用pyplot.matshow()函数添加绘图标题
2020/06/16 Python
CSS3标注引用的出处和来源的方法
2020/02/25 HTML / CSS
德国珠宝和手表在线商店:VALMANO
2019/03/24 全球购物
本科生详细的自我评价
2013/09/19 职场文书
2013年办公室秘书的个人自我鉴定
2013/10/24 职场文书
公司部门司机岗位职责
2014/01/03 职场文书
教师创先争优承诺书
2015/04/27 职场文书
思想工作总结范文
2015/08/12 职场文书
承诺书的签字人,需不需要承担相应的责任?
2019/07/09 职场文书
创业计划书之美容店
2019/09/16 职场文书
Mysql排查分析慢sql之explain实战案例
2022/04/19 MySQL
避坑之 JavaScript 中的toFixed()和正则表达式
2022/04/19 Javascript