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 相关文章推荐
建立动态的WML站点(二)
Oct 09 PHP
PHP写的求多项式导数的函数代码
Jul 04 PHP
在windows服务器开启php的gd库phpinfo中未发现
Jan 13 PHP
使用HMAC-SHA1签名方法详解
Jun 26 PHP
PHP缓存集成库phpFastCache用法
Dec 15 PHP
php格式化金额函数分享
Feb 02 PHP
php中实现获取随机数组列表的自定义函数
Apr 02 PHP
汇总PHPmailer群发Gmail的常见问题
Feb 24 PHP
PHP页面输出搜索后跳转下一页的处理方法
Sep 30 PHP
php生成word并下载代码实例
Mar 15 PHP
PHP时间函数使用详解
Mar 21 PHP
Laravel 框架路由原理与路由访问实例分析
Apr 14 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
CI框架验证码CAPTCHA辅助函数用法实例
2014/11/05 PHP
WIN8.1下搭建PHP5.6环境
2015/04/29 PHP
基于laravel Request的所有方法详解
2019/09/29 PHP
一段实时更新的时间代码
2006/07/07 Javascript
javascript读取Xml文件做一个二级联动菜单示例
2014/03/17 Javascript
jquery仿百度经验滑动切换浏览效果
2015/04/14 Javascript
JS中setTimeout的巧妙用法前端函数节流
2016/03/24 Javascript
AngularJS API之copy深拷贝详解及实例
2016/09/14 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
JavaScript实现简单的日历效果
2016/09/25 Javascript
node.js文件上传处理示例
2016/10/27 Javascript
js中document.referrer实现移动端返回上一页
2017/02/22 Javascript
jquery网页加载进度条的实现
2017/06/01 jQuery
jQuery+C#实现参数RSA加密传输功能【附jsencrypt.js下载】
2017/06/26 jQuery
js实现水平滚动菜单导航
2017/07/21 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
基于axios 解决跨域cookie丢失的问题
2018/09/26 Javascript
javascript中的event loop事件循环详解
2018/12/14 Javascript
Angular+ionic实现折叠展开效果的示例代码
2020/07/29 Javascript
[06:04]DOTA2国际邀请赛纪录片:Just For LGD
2013/08/11 DOTA
Python中字典的基本知识初步介绍
2015/05/21 Python
python实现二维码扫码自动登录淘宝
2016/12/27 Python
python 删除大文件中的某一行(最有效率的方法)
2017/08/19 Python
python thrift搭建服务端和客户端测试程序
2018/01/17 Python
在Mac上删除自己安装的Python方法
2018/10/29 Python
Python闭包思想与用法浅析
2018/12/27 Python
对Python之gzip文件读写的方法详解
2019/02/08 Python
总结Pyinstaller的坑及终极解决方法(小结)
2020/09/21 Python
Python日志打印里logging.getLogger源码分析详解
2021/01/17 Python
Hammitt官网:设计师手袋
2020/05/23 全球购物
实习鉴定范文
2013/12/19 职场文书
大学生学业生涯规划
2014/01/05 职场文书
奥利奥广告词
2014/03/20 职场文书
预备党员自我批评思想汇报
2014/10/10 职场文书
禁毒主题班会教案
2015/08/14 职场文书
防止web项目中的SQL注入
2021/12/06 MySQL