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程序的php代码
Apr 07 PHP
用PHP与XML联手进行网站编程代码实例
Jul 10 PHP
用php实现让页面只能被百度gogole蜘蛛访问的方法
Dec 29 PHP
php header示例代码(推荐)
Sep 08 PHP
ajax在joomla中的原生态应用代码
Jul 19 PHP
解析php利用正则表达式解决采集内容排版的问题
Jun 20 PHP
PHP编程风格规范分享
Jan 15 PHP
PHP常用字符串操作函数实例总结(trim、nl2br、addcslashes、uudecode、md5等)
Jan 09 PHP
PHP数组操作实例分析【添加,删除,计算,反转,排序,查找等】
Dec 24 PHP
老生常谈文本文件和二进制文件的区别
Feb 27 PHP
Ajax请求PHP后台接口返回信息的实例代码
Aug 21 PHP
php实现根据身份证获取精准年龄
Feb 26 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 和 MYSQL
2006/10/09 PHP
phpmyadmin3 安装配置图解教程
2012/03/29 PHP
PHP数字前补0的自带函数sprintf 和number_format的用法(详解)
2017/02/06 PHP
php文件包含的几种方式总结
2019/09/19 PHP
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
2006/12/22 Javascript
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
javascript强制点击广告的方法
2015/02/06 Javascript
解决jQuery uploadify在非IE核心浏览器下无法上传
2015/08/05 Javascript
JS实现的论坛Ajax打分效果完整实例
2015/10/31 Javascript
javascript给span标签赋值的方法
2015/11/26 Javascript
js模拟微博发布消息
2017/02/23 Javascript
JavaScript中最常见的三个面试题解析
2017/03/04 Javascript
Angular.Js中过滤器filter与自定义过滤器filter实例详解
2017/05/08 Javascript
谈谈JS中的!!
2017/12/07 Javascript
解决vue2中使用axios http请求出现的问题
2018/03/05 Javascript
vue elementUI table 自定义表头和行合并的实例代码
2019/05/22 Javascript
centos下更新Python版本的步骤
2013/02/12 Python
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
Python Tkinter实现简易计算器功能
2018/01/30 Python
在Python中os.fork()产生子进程的例子
2019/08/08 Python
.dcm格式文件软件读取及python处理详解
2020/01/16 Python
使用TFRecord存取多个数据案例
2020/02/17 Python
Linux系统下升级pip的完整步骤
2021/01/31 Python
SteelSeries赛睿官网:游戏外设和配件的领先制造商(耳机、键盘、鼠标和鼠标垫)
2018/06/17 全球购物
历史系毕业生自荐信
2013/10/28 职场文书
小学生开学感言
2014/02/28 职场文书
2014年学习全国道德模范事迹思想汇报
2014/09/15 职场文书
交通事故委托书范本
2014/09/28 职场文书
党员转正党支部意见
2015/06/02 职场文书
运动会观后感
2015/06/09 职场文书
监守自盗观后感
2015/06/10 职场文书
公司宣传语大全
2015/07/13 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
手写实现JS中的new
2021/11/07 Javascript
Android学习之BottomSheetDialog组件的使用
2022/06/21 Java/Android
Python sklearn分类决策树方法详解
2022/09/23 Python