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(2)――PHP类型
Feb 15 PHP
PHP表单验证的3个函数ISSET()、empty()、is_numeric()的使用方法
Aug 22 PHP
PHP的几个常用数字判断函数代码
Apr 24 PHP
利用PHP实现图片等比例放大和缩小的方法详解
Jun 06 PHP
如何用php获取文件名后缀
Jun 09 PHP
控制PHP的输出:缓存并压缩动态页面
Jun 11 PHP
php微信公众开发之获取周边酒店信息的方法
Dec 22 PHP
PHP获取用户客户端真实IP的解决方案
Oct 10 PHP
php 获取文件行数的方法总结
Oct 11 PHP
PHP设计模式之适配器模式定义与用法详解
Apr 03 PHP
PHP 文件写入和读取操作实例详解【必看篇】
Nov 04 PHP
php数组指针函数功能及用法示例
Feb 11 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 使用post,get的一种简洁方式
2010/04/25 PHP
php编程实现获取excel文档内容的代码实例
2011/06/28 PHP
PHP IDE PHPStorm配置支持友好Laravel代码提示方法
2015/05/12 PHP
PHP 中提示undefined index如何解决(多种方法)
2016/03/16 PHP
PHP正则+Snoopy抓取框架实现的抓取淘宝店信誉功能实例
2017/05/17 PHP
javascript 关于# 和 void的区别分析
2009/10/26 Javascript
EXT中xtype的含义分析
2010/01/07 Javascript
jQuery方法简洁实现隔行换色及toggleClass的使用
2013/03/15 Javascript
如何使用jQuery来处理图片坏链具体实现步骤
2013/05/02 Javascript
用js代码改变单选框选中状态的简单实例
2013/12/18 Javascript
JavaScript日期时间格式化函数分享
2014/05/05 Javascript
Javascript中3种实现继承的方法和代码实例
2014/08/12 Javascript
jQuery插件实现大图全屏图片相册
2015/03/14 Javascript
js完美实现@提到好友特效(兼容各大浏览器)
2015/03/16 Javascript
基于JavaScript操作DOM常用的API小结
2015/12/01 Javascript
jQuery EasyUI中DataGird动态生成列的方法
2016/04/05 Javascript
jQuery实现的多张图无缝滚动效果【测试可用】
2016/09/12 Javascript
基于jQuery实现文字打印动态效果
2017/04/21 jQuery
使用Require.js封装原生js轮播图的实现代码
2017/06/15 Javascript
[03:21]【TI9纪实】Old Boys
2019/08/23 DOTA
Python扫描IP段查看指定端口是否开放的方法
2015/06/09 Python
Python中动态检测编码chardet的使用教程
2017/07/06 Python
python3.6 +tkinter GUI编程 实现界面化的文本处理工具(推荐)
2017/12/20 Python
Python File(文件) 方法整理
2019/02/18 Python
Python3利用Dlib实现摄像头实时人脸检测和平铺显示示例
2019/02/21 Python
python实现WebSocket服务端过程解析
2019/10/18 Python
python print 格式化输出,动态指定长度的实现
2020/04/12 Python
在Keras中利用np.random.shuffle()打乱数据集实例
2020/06/15 Python
三星印度官网:Samsung印度
2019/08/03 全球购物
给水排水工程专业毕业生推荐信
2013/10/28 职场文书
大学生在校学习的自我评价
2014/02/18 职场文书
创先争优演讲稿
2014/09/15 职场文书
无房产证房屋转让协议书合同样本
2014/10/18 职场文书
亲属关系公证书样本
2015/01/23 职场文书
2015少先队大队辅导员工作总结
2015/07/24 职场文书
Golang 并发下的问题定位及解决方案
2022/03/16 Golang