thinkphp图片处理

一、总结

1、参考手册:参考手册上面啥都有,只是这样业务逻辑不明显,所以看视频会很好,但是如果用编程的灵性(设计),那么其实会更加高效,但是看视频更快而且没那么枯燥,更高效把

2、thinkphp图片操作功能:thinkphp支持的图片功能有图片裁剪,图片缩放,图片翻转,图片旋转和水印(图片水印和文字水印)及其它功能,而且没种具体功能里面都可以详细设置

3、英语与编程是相辅相成:关于这些功能的函数,还有无数的处理图片的函数(例如android),只需要记下面几个单词:open,crop,thumb,flip,rotate,water,text

4、关注差异的部分:至于获取的图片的属性,用脚指头想也知道有width,height等这些,而我们需要关注的属性是我们不熟悉的(type,size,mime),熟悉的没必要去看,没必要去记

5、编程的灵性(设计):我们操作完的图片我们自然要存对不对,所以这里是链式操作在所有要存的操作的后面都加上了->save("路径")

6、常用的一般在最显眼的位置:我们来看这个函数crop(100,200,300,350); // 从(300,350)的位置开始裁剪,裁剪100,200 大小,默认从(0,0)位置开始裁剪,函数中常用属性在前面,不常用属性在后面

7、记住功能,记住主干:只需要知道有这个功能即可,需要的时候来找就好了,这样效率高,除非研究代码的时候,但是练习熟悉一下有助于你记忆里面的知道这个功能

8、过度学习:学百分之130,才能保证你发挥出百分100的实力,学了百分之100的实力,期待发挥百分之70,留百分之30的正常误差,所以我是要过度学习,或者叫超越学习

二、thinkphp图片处理

1、读取图片

$images=Image::open("./img/c.jpg");

2、获取基本信息

// 宽度

dump($images->width());

// 高度

dump($images->height());

// 类型

dump($images->type());

// 宽和高

dump($images->size());

// mime

dump($images->mime());

3、图片裁剪

crop(100,200,300,350);

// 从(300,350)的位置开始裁剪,裁剪100,200 大小,默认从(0,0)位置开始裁剪

// 裁剪默认从顶点开始裁剪

$images->crop(300,300)->save("./img/cai.jpg");

// 设置裁剪位置

$images->crop(300,300,100,100)->save('./img/cai1.jpg');

4、图片缩放

// 图片缩放 默认是等比例缩放,可以进行设置

// //常量,标识缩略图等比例缩放类型

// constTHUMB_SCALING???=?1

// //常量,标识缩略图缩放后填充类型

// constTHUMB_FILLED????=?2;

// //常量,标识缩略图居中裁剪类型

// constTHUMB_CENTER????=?3;

// //常量,标识缩略图左上角裁剪类型

// constTHUMB_NORTHWEST?=?4;

// //常量,标识缩略图右下角裁剪类型

// constTHUMB_SOUTHEAST?=?5;

// //常量,标识缩略图固定尺寸缩放类型

// constTHUMB_FIXED?????=?6;

$images->thumb(300,300,2)->save('./img/th.jpg');

5、图片翻转

$images->flip()->save("./img/fan.jpg");

6、图片旋转

$images->rotate(180)->save("./img/xuan.jpg");

7、水印

// 图片水印

$images->water("./img/logo.png",5,50)->save("./img/water.jpg");

// 文字水印

$images->text('123',"msyh.ttf",20,"#ff0000")->save('./img/text.jpg');

thinkphp图片处理的更多相关文章

  1. Thinkphp图片水印和文字水印

    1.Thinkphp图像处理 在TP框架中,我们经常用到图片上传,我最近写了很多关于图片上传的文章,thinkphp图片上传+validate表单验证+图片木马检测+缩略图生成等文章,今天写一下关于图 ...

  2. Linux 下 ---ThinkPHP 图片上传提示:上传根目录不存在!请尝试手动创建

    2016年11月15日11:15:47 Windows下如果碰到如此问题,要看文件保存根路径里的rootpath,比如ThinkPHP框架里config.php文件里的的参数配置: //文件上传相关配 ...

  3. ThinkPHP图片上传

    ThinkPHP是国内比较流行的轻量级的PHP框架,它在国内流行的一个最主要的因素在于它的说明文档非常健全完善,以及它源码内的注释都是中文的,方便于英语能力较差的程序员学习. 图片上传在网站里是很常用 ...

  4. thinkphp图片上传+validate表单验证+图片木马检测+缩略图生成

    目录 1.案例 1.1图片上传  1.2进行图片木马检测   1.3缩略图生成   1.4控制器中调用缩略图生成方法 1.案例 前言:在thinkphp框架的Thinkphp/Library/Thin ...

  5. ThinkPHP - 图片水印

    图片添加水印 可以通过使用Image类的水印方法给图片添加水印支持,例如:water 给图片添加水印 用法   water($source, $water, $savename=null, $alph ...

  6. Thinkphp 图片上传

    案例:广告的增删改查 步骤: 1引用 js 2 填写 input type=" file" 的id 3 填写 url 4后台保存地址 5前台成功后的处理 广告添加页 <div ...

  7. thinkphp图像的裁剪、缩放、加水印

    ThinkPHP 图片处理函数,需要文字水印字体,可在windows下 控制面板 > 大图标(右上角) > 字体 找到需要的字体 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  8. thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印

    今天分享一下thinkphp 3.2.3整合ueditor 1.4,给上传的图片加水印.博主是新手,在这里卡住了很久(>_<) thinkphp 3.2.3整合ueditor 1.4 下载 ...

  9. thinkphp + 美图秀秀api 实现图片裁切上传,带数据库

    思路: 1.数据库 创建test2 创建表img,字段id,url,addtime 2.前台页: 1>我用的是bootstrap 引入必要的js,css 2>引入美图秀秀的js 3.后台: ...

随机推荐

  1. ifreq、ifconf

    网络相关的ioctl请求的request参数及arg地址必须指向的数据类型如下表所示: 接口 SIOCGIFCONF SIOCSIFADDR SIOCGIFADDR SIOCSIFBRDADDR SI ...

  2. [CSSinJS] Convert Sass (SCSS) Styled Button to CSSinJS with JavaScript Templates and Variables

    This is an introduction to CSSinJS that doesn't require any JavaScript knowledge, just a basic CSS. ...

  3. Use Uncertainty As a Driver

     Use Uncertainty As a Driver Kevlin Henney ConFRonTEd WiTH TWo opTionS, most people think that the ...

  4. 不要小看了get 与set

    不知道大家曾经是怎么使用实体中的get与set的.我先前是这样使用的. 先定义一个实体类.之后写与之相关的字段名称.最后匹配上与之相关的属性,控制字段的读写权限. 曾经使用方式 代码1 public ...

  5. [Java][log4j]支持同一时候按日期和文件大小切割日志

    依据DailyRollingFileAppender和RollingFileAppender改编,支持按日期和文件大小切割日志.  源文件: package com.bao.logging; impo ...

  6. php如何截取出视频中的指定帧作为图片

    php如何截取出视频中的指定帧作为图片 一.总结 一句话总结:截取视频指定帧为图片,php ffmpeg扩展已经完美实现,并且php ffmpeg是开源的 二.php如何截取出视频中的指定帧作为图片 ...

  7. Gym - 100338C Important Roads 最短路+tarjan

    题意:给你一幅图,问有多少条路径使得去掉该条路后最短路发生变化. 思路:先起始两点求两遍单源最短路,利用s[u] + t[v] + G[u][v] = dis 找出所有最短路径,构造新图.在新图中找到 ...

  8. Scrapy发送POST请求

    一.发送post请求需要将start_urls注释,然后重写start_requests方法二.使用yield scrapy.FormRequest(url=post_url, formdata=fo ...

  9. Metro界面的真正意义

    昨天去客户那给安装防火墙和交换机,因为客户和我们公司签订了维保的合同,然后我们公司两个人去了客户那跟客户沟通也去顺路去做巡检. 客户之前跟我们公司采购了一台DELL的PC服务器,预装了win serv ...

  10. 【转】一篇关于32位Linux内核使用大内存的文章——Hugemem Kernel Explained  &nb

    红旗DC系列Linux操作系统(x86平台)中带有四类核心: UP (支持单内核) SMP (支持多内核) hugemem Icc* (用intel C编译器编译的核心) 其中hugemem核心往往引 ...