文档章节

缩放类

水冰love
 水冰love
发布于 2017/02/16 09:13
字数 254
阅读 0
收藏 0
点赞 0
评论 0

//压缩图片
    public function suofang($back,$path='image/suofang',$w=100,$h=100,$pre='s_'){
        $back = ltrim($back,'/');
        ///打开一个已经存在的图片
            //获取图片的后缀
        $arr = explode('.',$back);
        $suffix = array_pop($arr);
        if($suffix == 'jpg'){
            $suffix = 'jpeg';
        }
        //制作打开图片的变量函数
        $new  = 'imagecreatefrom'.$suffix;
        //调用函数 打开以有的图片
        $b_img = $new($back);
        //获取原图的宽高
        list($b_width,$b_height) = getimagesize($back);
        /***2,.准备创建缩放的画布*****/
        //需要进行等比例缩放判断
        if(($w/$b_width) > ($h/$b_height)){
            $dw = $w;
            $dh  = $b_height*($w/$b_width);
        }else{
            $dh = $h;
            $dw = $b_width*($h/$b_height);
        }
        //创建一个画布
        $img = imagecreatetruecolor($dw,$dh);
        //执行缩放
        imagecopyresampled($img,$b_img,0,0,0,0,$dw,$dh,$b_width,$b_height);
        //保存缩放图片
            //判断保存目录是否存在
            if(!file_exists($path)){
                mkdir($path);
            }
            //处理路径中最后的斜线(为了保存时使用)
            $path = rtrim($path,'/').'/';
            //获取图片文件名
            $filename = basename($back);
            //拼接路径和文件名
            $newPath = $path.$pre.$filename;

            //输出或者保存图片
            //header('Content-type:image/'.$suffix_b);
            //保存图片
            $type = 'image'.$suffix;
            $result = $type($img,$newPath);
            //释放资源
            imagedestroy($img);
            imagedestroy($b_img);
            if($result){
                return $newPath;
            }else{
                return false;        
            }
    }

本文转载自:

共有 人打赏支持
水冰love
粉丝 1
博文 22
码字总数 1478
作品 0
济南
疯狂ios讲义之实例:通过捏合手势缩放图片

实例:通过捏合手势缩放图片 捏合手势处理器可以检测到用户手势捏合的比例,解析该捏合比例即可对图片进行缩放。本实例将通过捏合手势对图片进行缩放。创建一个Single View Application,该应...

博文视点 ⋅ 2014/03/28 ⋅ 1

winform分辨率问题解决方案

一、问题分析 winform程序在不同分辨率下产生界面混乱的主要原因是,默认情况下winform程序的坐标是基于Point(点)的,Point与DPI(分辨率,每英寸所打印点数)相关。当DPI发生变化时,显示...

牛牛牛大棚 ⋅ 2016/02/04 ⋅ 0

WPF中的图表设计器 – 1

[原文地址] http://www.codeproject.com/KB/WPF/WPFDiagramDesigner_Part1.aspx [原文作者] sukram [译者]WizRay Download source – 629.79 KB Download binaries – 611.23 KB 介绍 在这篇......

晨曦之光 ⋅ 2012/03/09 ⋅ 0

Android ImageView

ImageView   ImageView,图像视图,直接继承自View类,它的主要功能是用于显示图片,实际上它不仅仅可以用来显示图片,任何Drawable对象都可以使用ImageView来显示。ImageView可以适用于任...

我叫leo- ⋅ 2016/05/06 ⋅ 0

LibGDX_4.6: 多分辨率屏幕适配: 视口(Viewport)

本文链接: http://blog.csdn.net/xietansheng/article/details/50187331 LibGDX 基础教程(总目录) 1. 概述 手机屏幕多种多样,有着分辨率不同,屏幕宽高比也可能不同。同一张图片在不同手机...

xietansheng ⋅ 2015/12/07 ⋅ 0

LibGDX_4.8: 动作(Action)

本文链接: http://blog.csdn.net/xietansheng/article/details/50187485 LibGDX 基础教程(总目录) 1. 概述 动作(Action)是附加在演员身上的在指定时间内随着时间推移而被执行的一些任务逻...

xietansheng ⋅ 2015/12/07 ⋅ 0

canvas 手势控制

基本介绍 关于 canvas 的基本使用,可以参考以下两个网站: Android Canvas绘图详解(图文) - 泡在网上的日子 Android中Canvas绘图基础详解(附源码下载) - CSDN博客 这里主要讲解如何将 canv...

LiuHDme ⋅ 2017/11/10 ⋅ 0

疯狂ios讲义之图像控件(UIImageView)

UIImageView代表一个图片显示控件,它直接继承了UIView基类,没有继承UIControl,因此,UIImage只能作为图片的显示控件,不能接受用户输入,也不能与用户交互,它只是一个静态控件。 当程序需...

博文视点 ⋅ 2014/01/22 ⋅ 0

UIUIScrollView滚动视图与UIPageControl

1.UIScrollView概述 UIScrollView是所有滚动视图的基类,其子类有:UITableView,UITextView,父类为UIView,主要用于显示屏 幕显示不下 的图片,相册,文字,滚动条等等 2.UIScrollView常用属性 sc...

tuwangsheng ⋅ 2014/04/28 ⋅ 0

疯狂ios讲义之实例:通过旋转手势旋转图片

实例:通过旋转手势旋转图片 本实例将会对前面的实例进行改进,在前面实例的基础上增加一个旋转手势处理器,从而让该应用既可根据用户捏合手势对图片进行缩放,也可根据用户旋转手势对图片进...

博文视点 ⋅ 2014/03/28 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

个人博客的运营模式能否学习TMALL天猫质量为上?

心情随笔|个人博客的运营模式能否学习TMALL天猫质量为上? 中国的互联网已经发展了很多年了,记得在十年前,个人博客十分流行,大量的人都在写博客,而且质量还不错,很多高质量的文章都是在...

原创小博客 ⋅ 52分钟前 ⋅ 0

JavaScript零基础入门——(十一)JavaScript的DOM操作

JavaScript零基础入门——(十一)JavaScript的DOM操作 大家好,欢迎回到我们的JavaScript零基础入门。最近有些同学问我说,我讲的的比书上的精简不少。其实呢,我主要讲的是我在开发中经常会...

JandenMa ⋅ 今天 ⋅ 0

volatile和synchronized的区别

volatile和synchronized的区别 在讲这个之前需要先了解下JMM(Java memory Model :java内存模型):并发过程中如何处理可见性、原子性、有序性的问题--建立JMM模型 详情请看:https://baike.b...

MarinJ_Shao ⋅ 今天 ⋅ 0

深入分析Kubernetes Critical Pod(一)

Author: xidianwangtao@gmail.com 摘要:大家在部署Kubernetes集群AddOn组件的时候,经常会看到Annotation scheduler.alpha.kubernetes.io/critical-pod"="",以表示这是一个关键服务,那你知...

WaltonWang ⋅ 今天 ⋅ 0

原子性 - synchronized关键词

原子性概念 原子性提供了程序的互斥操作,同一时刻只能有一个线程能对某块代码进行操作。 原子性的实现方式 在jdk中,原子性的实现方式主要分为: synchronized:关键词,它依赖于JVM,保证了同...

dotleo ⋅ 今天 ⋅ 0

【2018.06.22学习笔记】【linux高级知识 14.4-15.3】

14.4 exportfs命令 14.5 NFS客户端问题 15.1 FTP介绍 15.2/15.3 使用vsftpd搭建ftp

lgsxp ⋅ 今天 ⋅ 0

JeeSite 4.0 功能权限管理基础(Shiro)

Shiro是Apache的一个开源框架,是一个权限管理的框架,实现用户认证、用户授权等。 只要有用户参与一般都要有权限管理,权限管理实现对用户访问系统的控制,按照安全规则或者安全策略控制用户...

ThinkGem ⋅ 昨天 ⋅ 0

python f-string 字符串格式化

主要内容 从Python 3.6开始,f-string是格式化字符串的一种很好的新方法。与其他格式化方式相比,它们不仅更易读,更简洁,不易出错,而且速度更快! 在本文的最后,您将了解如何以及为什么今...

阿豪boy ⋅ 昨天 ⋅ 0

Python实现自动登录站点

如果我们想要实现自动登录,那么我们就需要能够驱动浏览器(比如谷歌浏览器)来实现操作,ChromeDriver 刚好能够帮助我们这一点(非谷歌浏览器的驱动有所不同)。 一、确认软件版本 首先我们...

blackfoxya ⋅ 昨天 ⋅ 0

线性回归原理和实现基本认识

一:介绍 定义:线性回归在假设特证满足线性关系,根据给定的训练数据训练一个模型,并用此模型进行预测。为了了解这个定义,我们先举个简单的例子;我们假设一个线性方程 Y=2x+1, x变量为商...

wangxuwei ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部