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 CLI实现简单的数据库实时监控调度
Jul 01 PHP
网页游戏开发入门教程三(简单程序应用)
Nov 02 PHP
PHP文件读写操作之文件写入代码
Jan 13 PHP
php中检查文件或目录是否存在的代码小结
Oct 22 PHP
php将字符串全部转换成大写或者小写的方法
Mar 17 PHP
php恢复数组的key为数字序列的方法
Apr 28 PHP
PHP使用CURL实现多线程抓取网页
Apr 30 PHP
php类自动加载器实现方法
Jul 28 PHP
PHP抽奖算法程序代码分享
Oct 08 PHP
浅谈PHP正则中的捕获组与非捕获组
Jul 18 PHP
PHP实现活动人选抽奖功能
Apr 19 PHP
php使用scandir()函数扫描指定目录下所有文件示例
Jun 08 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
第十四节 命名空间 [14]
2006/10/09 PHP
ASP知识讲座四
2006/10/09 PHP
用PHPdig打造属于你自己的Google[图文教程]
2007/02/14 PHP
php5 pdo新改动加载注意事项
2008/09/11 PHP
深入解析php中的foreach函数
2013/08/31 PHP
php获取一个变量的名字的方法
2014/09/05 PHP
php中Ctype函数用法详解
2014/12/09 PHP
php生成静态html页面的方法(2种方法)
2015/09/14 PHP
jquery设置控件位置的方法
2013/08/21 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
JavaScript仿微博发布信息案例
2016/11/16 Javascript
js实现颜色阶梯渐变效果(Gradient算法)
2017/03/21 Javascript
Vue仿手机qq的实例代码(demo)
2017/09/08 Javascript
vue-devtools的安装步骤
2018/04/23 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
微信小程序 setData 对 data数据影响问题
2019/04/18 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
JS正则表达式验证密码强度
2020/03/18 Javascript
[02:23]完美世界全国高校联赛街访DOTA2第一期
2019/11/28 DOTA
[00:59]PWL开团时刻DAY7——我在赶
2020/11/06 DOTA
Python排序算法之选择排序定义与用法示例
2018/04/29 Python
Python实现的多项式拟合功能示例【基于matplotlib】
2018/05/15 Python
python实现windows倒计时锁屏功能
2019/07/30 Python
python学生信息管理系统实现代码
2019/12/17 Python
PyTorch 解决Dataset和Dataloader遇到的问题
2020/01/08 Python
利用Python脚本批量生成SQL语句
2020/03/04 Python
vscode写python时的代码错误提醒和自动格式化的方法
2020/05/07 Python
如何解决flask修改静态资源后缓存文件不能及时更改问题
2020/08/02 Python
满月酒答谢词
2014/01/14 职场文书
安全生产汇报材料
2014/02/17 职场文书
代领报检证委托书范本
2014/10/11 职场文书
2014年政风行风评议工作总结
2014/10/21 职场文书
幼儿园教师自荐书
2015/03/06 职场文书
经营场所使用证明
2015/06/19 职场文书
技术转让协议书
2016/03/19 职场文书
为什么不建议在go项目中使用init()
2021/04/12 Golang