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 相关文章推荐
留言板翻页的实现详解
Oct 09 PHP
echo(),print(),print_r()之间的区别?
Nov 19 PHP
PHP程序员编程注意事项
Apr 10 PHP
PHP utf-8编码问题,utf8编码,数据库乱码,页面显示输出乱码
Apr 08 PHP
php上传功能集后缀名判断和随机命名(强力推荐)
Sep 10 PHP
PHP获取昨天、今天及明天日期的方法
Feb 03 PHP
微信支付开发维权通知实例
Jul 12 PHP
thinkphp的dump函数无输出实例代码
Nov 15 PHP
PHP写的简单数字验证码实例
May 23 PHP
PHP实现的猴王算法(猴子选大王)示例
Apr 30 PHP
实例解析php的数据类型
Oct 24 PHP
php基于 swoole 实现的异步处理任务功能示例
Aug 13 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使HTML标签自动补全闭合函数代码
2012/10/04 PHP
ThinkPHP采用实现三级循环代码实例
2014/07/18 PHP
PHP对文件进行加锁、解锁实例
2015/01/23 PHP
PHP生成器简单实例
2015/05/13 PHP
PHP基于单例模式编写PDO类的方法
2016/09/13 PHP
laravel5.6实现数值转换
2019/10/23 PHP
js中判断控件是否存在
2010/08/25 Javascript
js对象数组按属性快速排序
2011/01/31 Javascript
Javascript无阻塞加载具体方式
2013/06/28 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
ECMAScript 5中的属性描述符详解
2015/03/02 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
jQuery过滤选择器经典应用
2016/08/18 Javascript
JavaScript实现翻页功能(附效果图)
2017/02/16 Javascript
JavaScript动态绑定详解
2017/09/14 Javascript
vue中element组件样式修改无效的解决方法
2018/02/03 Javascript
详解适配器在JavaScript中的体现
2018/09/28 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
vue基础之事件v-onclick=&quot;函数&quot;用法示例
2019/03/11 Javascript
Vue基本使用之对象提供的属性功能
2019/04/30 Javascript
微信小程序 弹窗输入组件的实现解析
2019/08/12 Javascript
使用npm命令提示: 'npm' 不是内部或外部命令,也不是可运行的程序的处理方法
2020/05/14 Javascript
[03:10]2014DOTA2 TI马来劲旅Titan首战告捷目标只是8强
2014/07/10 DOTA
Python简单生成随机姓名的方法示例
2017/12/27 Python
零基础使用Python读写处理Excel表格的方法
2019/05/02 Python
python集合是否可变总结
2019/06/20 Python
Python利用matplotlib做图中图及次坐标轴的实例
2019/07/08 Python
Python爬取微信小程序Charles实现过程图解
2020/09/29 Python
Python实现壁纸下载与轮换
2020/10/19 Python
html5实现移动端适配完美写法
2017/11/16 HTML / CSS
办公室领导干部作风整顿个人整改措施
2014/09/17 职场文书
工伤事故赔偿协议书范文
2014/09/24 职场文书
假释思想汇报范文
2014/10/11 职场文书
学院党委班子四风问题自查报告及整改措施
2014/10/25 职场文书
政审证明范文
2015/06/19 职场文书
2015初中政治教学工作总结
2015/07/21 职场文书