PHP动态图像处理
相关代码见:https://www.github.com/lozybean/learn_www/ 目录
1. 画布管理:
imagecreate():创建一个基于调色板的画布,指定画布的长、宽,并返回其资源句柄;
imagecreatetruecolor():创建一个真彩色图像画布,指定画布的长、宽,并返回其资源句柄;
imagedestroy():销毁一个画布句柄;
2. 设置颜色:imagecolorallocate(),第一个参数指定画布句柄,后三个参数分别指定rgb值,返回一个颜色标示符;
3. 生成图像:imagegif()、imagejpeg()、imagepng()、imagewbmp(),分别生成不同格式的图像;
在生成图像之前,必须使用header()函数,告知浏览器使用正确的MIME类型对接收的内容进行解析;
header(“Content-type: image/gif")
4. 绘制图像:
imagefill(resource $image,$x,$y,$color),坐标($x,$y)表示相对于图像左上角(0,0)的位置,使用$color填充,与该点相邻且颜色相同的点都会被填充,有点像油漆桶的操作。
imagesetpixel(resource $image,$x,$y,$color),在($x,$y)出绘制一个单一点;
imageline(resource $image,$x1,$y1,$x2,$y2,$color),绘制一条起点为($x1,$y1),终点为($x2,$y2)的线段;
imagerectangle(resource $image,$x1,$y1,$x2,$y2,$color),绘制一个矩形,左上角为($x1,$y1),右下角为($x2,$y2);
imagefilledrectangle():绘制一个矩形,并使用颜色填充;
imagepolygon(resource $image,array $points,int $num_points, int $color):绘制一个多边形,$points数组指定多边形每个顶点的坐标,依次以x0,y0,x1,y1的顺序保存,$num_points指定顶点总数;
imagefilledpolygon():和上一个函数一样,并使用颜色填充;
imageellipse(resource $image,$cx,$cy,$w,$h,$color):绘制一个椭圆,($cx,$cy)指定椭圆的中心,$w,$h表示椭圆的宽和高;
imagefilledellipse():和上一个函数一样,并使用颜色填充;
imagearc(resource $image,$cx,$cy,$w,$h,$s,$e,$color):绘制圆弧,($cx,$cy)为坐标中心,$w和$h分别指定椭圆的宽和高,起始点和终止点以角度指定,$s,$e指定开始和终止的角度,其中0°位于三点钟的位置;
imagefilledarc():和上一个函数一样,并使用颜色填充;
5. 绘制文字:
imagestring(resource $image,$font,$x,$y,$s,color):水平画一行字符串,$font为一个整形表示内置字体,值越大字体越大,($x,$y)表示起点坐标,$s指定字符串;
imageupstring():垂直画一行字符串,参数相同;
imagechar():水平画一个字符,参数相同,$s出为一个字符;
imageupchar():垂直画一个字符,参数相同;
6. TrueType字体:imagettftext(resource $image,float $size,float $angle, int $x, int $y, int $color,string $fontfile, string $text);
其中$size设定字体大小,$angle设定角度,0°为从左向右的角度,更高的数值表示逆时针旋转,($x,$y)代表第一个字符的左上角坐标,$fontfile指定一个TrueType字体的路径,$text指定输出的字符串;如果是中文,则应该将其转换为UTF-8编码:iconv(“GB2312”,”UTF-8”,”一个中文”);
7. 验证码应用(见目录vcode)
8. 图像处理应用(见目录handle_image)
PHP动态图像处理的更多相关文章
- PHP14 动态图像处理
学习要点 如何使用PHP中的GD库 设计验证码类 PHP图片处理 设计图像图处理类 如何使用PHP中的GD库 在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站 ...
- 开源免费的.NET图像即时处理的组件ImageProcessor
承接以前的组件系列,这个组件系列旨在介绍.NET相关的组件,让大家可以在项目中有一个更好的选择,社区对于第三方插件的介绍还是比较少的,很多博文的内容主要还是介绍一些简单的操作(很多人都说博客园现在是“ ...
- ImageProcessor组件
ImageProcessor组件 开源免费的.NET图像即时处理的组件ImageProcessor 承接以前的组件系列,这个组件系列旨在介绍.NET相关的组件,让大家可以在项目中有一个更好的选择, ...
- 《细说PHP》第二版--读书笔记
第五章 PHP的基本语法 5.2.4 在程序中使用空白的处理 5.3 变量 5.3.1 变量的声明 在php中变量的声明必须是使用一个$符号,后面跟变量名来表示 unset()函数释放指定变量 iss ...
- PHP入门(一)
一.概述 PHP(Hypertext Preprocessor缩写),全称超级文本预处理器,是一种在服务器端执行的脚本语言.因此既具备了脚本语言的优缺点 ,又具备了后台服务器语言的优异性能.可以说PH ...
- 【VS开发】【图像处理】基于灰度世界、完美反射、动态阈值等图像自动白平衡算法的原理、实现及效果
基于灰度世界.完美反射.动态阈值等图像自动白平衡算法的原理.实现及效果 白平衡是电视摄像领域一个非常重要的概念,通过它可以解决色彩还原和色调处理的一系列问题.白平衡是随着电子影像再现色彩真实 ...
- Android开发学习之路-动态高斯模糊怎么做
什么是高斯模糊? 高斯模糊(英语:Gaussian Blur),也叫高斯平滑,是在Adobe Photoshop.GIMP以及Paint.NET等图像处理软件中广泛使用的处理效果,通常用它来减少图像噪 ...
- Atitit图像处理的用途
Atitit图像处理的用途 1.1. 分类识别 (人脸检测,肤色识别,人类检测:1 1.2. 炫丽的动态按钮生成:色相旋转+自己的草书等图片合成,图片自动裁剪1 1.3. 集成调用自绘gui接口:识别 ...
- Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx
Atitit 图像处理知识点体系知识图谱 路线图attilax总结 v4 qcb.xlsx 分类 图像处理知识点体系 v2 qb24.xlsx 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...
随机推荐
- 最全最详细:ubuntu16.04下内核编译以及设备驱动程序的编写(针对新手而写)
写在前面:本博客为本人原创,转载请注明出处!同时,本博客严禁任何下载站随意抓取!!! 本博客唯一合法URL: 总体考虑 要去写设备驱动程序,说白了就三大步骤:下载内核源码构建内核源码树(也就是下载你的 ...
- CS Round#50 D min-races
Min Races Time limit: 1000 msMemory limit: 256 MB In a racing championship there are N racing driv ...
- inotify软件部署及实时同步
声明:博主使用的是CentOS6.9的系统 参考资料: https://github.com/rvoicilas/inotify-tools/wiki http://www.ibm.com/devel ...
- 玩了几天的ARToolKit
因为玩的不深,就说一说配置环境出错的解决. 假如大家网上下载的ARToolKit下面有glut32.dll,那按照教程来配置环境的时候(其中有一步是:将OpenGL的dll拷贝到windows sys ...
- 在websphere上部署集群应用程序-工作记录
1) 创建web集群.client集群,添加集群托管节点,根据需求来,我的需求是两个应用部署到4个服务器上,属于1主3备模式 2) 创建webspere变量:选择你需要的集群作用域,新建资源 (作 ...
- android动画介绍之 自己定义Animation动画实现qq抖一抖效果
昨天我们介绍了Animation的基本使用方法.小伙伴们了解的怎么样了?假设还没有了解过Animation的小伙伴能够看看这篇博客 android动画介绍--Animation 实现loading动画 ...
- hdoj 1251 统计难题 【字典树】
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Subm ...
- 自学Zabbix3.2-配置功能简介
zabbix配置功能介绍 zabbix配置内容比较多,我们要分为9大块来讲解.分别如下: 1. 主机与组 添加主机配置与组配置. 1.1.创建主机方法 1.1.1 新建主机 c ...
- [笔记]使用Keepalived实现Nginx主从热备
HA(High Available), 高可用性集群,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,且分为活动节点及备用节点. 1.1. 高可靠软件keepalived keepaliv ...
- 「mysql优化专题」这大概是一篇最好的mysql优化入门文章(1)
优化,一直是面试最常问的一个问题.因为从优化的角度,优化的思路,完全可以看出一个人的技术积累.那么,关于系统优化,假设这么个场景,用户反映系统太卡(其实就是高并发),那么我们怎么优化? 如果请求过多, ...