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 相关文章推荐
IStream与TStream之间的相互转换
Aug 01 PHP
php 归并排序 数组交集
May 10 PHP
php中禁止单个IP与ip段访问的代码小结
Jul 04 PHP
深入PHP购物车模块功能分析(函数讲解,附源码)
Jun 25 PHP
php中apc缓存使用示例
Dec 25 PHP
php获取文件名后缀常用方法小结
Feb 24 PHP
php使用GD库创建图片缩略图的方法
Jun 10 PHP
PHP is_array() 检测变量是否是数组的实现方法
Jun 13 PHP
Yii2中YiiBase自动加载类、引用文件方法分析(autoload)
Jul 25 PHP
基于thinkPHP实现的微信自定义分享功能示例
Sep 23 PHP
PHP实现微信图片上传到服务器的方法示例
Jun 29 PHP
PHP实现微信小程序人脸识别刷脸登录功能
May 24 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 记录进行累加并显示总时长为秒的结果
2011/11/04 PHP
php curl 获取https请求的2种方法
2015/04/27 PHP
Yii使用Captcha验证码的方法
2015/12/28 PHP
使用PHP开发留言板功能
2019/11/19 PHP
js使用for循环与innerHTML获取选中tr下td值
2014/09/26 Javascript
使用jQuery mobile库检测url绝对地址和相对地址的方法
2015/12/04 Javascript
JavaScript实现分页效果
2017/03/28 Javascript
vue-router实现webApp切换页面动画效果代码
2017/05/25 Javascript
无限循环轮播图之运动框架(原生JS实现)
2017/10/01 Javascript
JS实现获取进今年第几天是周几的方法分析
2018/06/27 Javascript
微信小程序自定义波浪组件使用方法详解
2019/09/21 Javascript
谈谈IntersectionObserver懒加载的具体使用
2019/10/15 Javascript
react实现移动端下拉菜单的示例代码
2020/01/16 Javascript
在SAE上部署Python的Django框架的一些问题汇总
2015/05/30 Python
老生常谈Python startswith()函数与endswith函数
2017/09/08 Python
Python进阶:生成器 懒人版本的迭代器详解
2019/06/29 Python
Python使用matplotlib绘制三维参数曲线操作示例
2019/09/10 Python
如何将 awk 脚本移植到 Python
2019/12/09 Python
python+adb+monkey实现Rom稳定性测试详解
2020/04/23 Python
500行python代码实现飞机大战
2020/04/24 Python
Python定义函数实现累计求和操作
2020/05/03 Python
python 如何区分return和yield
2020/09/22 Python
Anaconda+spyder+pycharm的pytorch配置详解(GPU)
2020/10/18 Python
python绘图pyecharts+pandas的使用详解
2020/12/13 Python
英国婴儿和儿童服装网站:Vertbaudet
2018/04/02 全球购物
来自圣地亚哥的实惠太阳镜:Knockaround
2018/08/27 全球购物
美国运动鞋和服装网上商店:YCMC
2018/09/15 全球购物
Kate Spade澳大利亚官方网站:美国设计师手袋品牌
2019/09/10 全球购物
探亲邀请信范文
2014/01/30 职场文书
2014年电工工作总结
2014/11/20 职场文书
台风停课通知
2015/04/24 职场文书
幽灵公主观后感
2015/06/09 职场文书
虎兄虎弟观后感
2015/06/12 职场文书
Python-OpenCV实现图像缺陷检测的实例
2021/06/11 Python
基于Python实现一个春节倒计时脚本
2022/01/22 Python
漫画《催眠麦克风-Dawn Of Divisions》第二卷PV公开
2022/04/05 日漫