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出现Cannot modify header information问题的解决方法大全
Apr 09 PHP
PHP下一个非常全面获取图象信息的函数
Nov 20 PHP
Views rows style模板重写代码
May 16 PHP
CodeIgniter CLI模式简介
Jun 17 PHP
kohana框架上传文件验证规则写法示例
Jul 14 PHP
php实现的zip文件内容比较类
Sep 24 PHP
php中print(),print_r(),echo()的区别详解
Dec 01 PHP
php中二维数组排序问题方法详解
Aug 28 PHP
php中关于长度计算容易混淆的问题分析
May 27 PHP
学习thinkphp5.0验证类使用方法
Nov 16 PHP
使用swoole 定时器变更超时未支付订单状态的解决方案
Jul 24 PHP
PHP开发api接口安全验证操作实例详解
Mar 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
PR值查询 | PageRank 查询
2006/12/20 PHP
centos 5.6 升级php到5.3的方法
2011/05/14 PHP
php调用shell的方法
2014/11/05 PHP
php中cookie实现二级域名可访问操作的方法
2014/11/11 PHP
CI框架整合widget(页面格局)的方法
2016/05/17 PHP
PHP PDO操作MySQL基础教程
2017/06/05 PHP
Joomla框架实现字符串截取的方法示例
2017/07/18 PHP
基于jQuery的表格操作插件
2010/04/22 Javascript
浅析document.createDocumentFragment()与js效率
2013/07/08 Javascript
jQuery旋转木马式幻灯片轮播特效
2015/12/04 Javascript
js获取url传值的方法
2015/12/18 Javascript
用nodejs的实现原理和搭建服务器(动态)
2016/08/10 NodeJs
javascript构造函数以及原型对象的理解
2017/01/13 Javascript
Bootstrap Table使用整理(二)
2017/06/09 Javascript
JavaScript转换数据库DateTime字段类型方法
2017/06/27 Javascript
jquery实现楼层滚动效果
2018/01/01 jQuery
Three.js实现简单3D房间布局
2018/12/30 Javascript
[04:44]显微镜下的DOTA2第二期——你所没有注意到的细节
2014/06/20 DOTA
Python3基础之函数用法
2014/08/13 Python
python编写暴力破解FTP密码小工具
2014/11/19 Python
Python信息抽取之乱码解决办法
2017/06/29 Python
python使用Flask操作mysql实现登录功能
2018/05/14 Python
python实现微信机器人: 登录微信、消息接收、自动回复功能
2019/04/29 Python
Python django搭建layui提交表单,表格,图标的实例
2019/11/18 Python
Python requests模块session代码实例
2020/04/14 Python
PyQT5 实现快捷键复制表格数据的方法示例
2020/06/19 Python
pytorch实现查看当前学习率
2020/06/24 Python
使用py-spy解决scrapy卡死的问题方法
2020/09/29 Python
python如何对链表操作
2020/10/10 Python
应届生自荐信范文
2014/02/21 职场文书
环境工程专业自荐信范文
2014/03/18 职场文书
社区消防工作实施方案
2014/03/21 职场文书
个人工作表现评语
2014/04/30 职场文书
golang判断key是否在map中的代码
2021/04/24 Golang
Python基础之变量的相关知识总结
2021/06/23 Python
Canvas如何做个雪花屏版404的实现
2021/09/25 HTML / CSS