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 分类 分类 理论知识 图像金字塔 常用底层操作 卷积扫描 ...
随机推荐
- 使用echarts,制作色温图
1.需要下载echarts的echarts-all.js文件和创建地图需要用到的数据源 2.在项目中创建jsp文件,将js文件引入 <script type="text/javascr ...
- Linux Redis集群搭建与集群客户端实现
硬件环境 本文适用的硬件环境如下 Linux版本:CentOS release 6.7 (Final) Redis版本: Redis已经成功安装,安装路径为/home/idata/yangfan/lo ...
- C语言socket编程----实现UDP通信
TCP/IP协议叫做传输控制/网际协议,又叫做网络通信协议.实际上,它包括上百个功能的协议. 套接字(socket):在网络中用来描述计算机中不同程序与其他计算程序的通信方式. 套接字分为三类; 流式 ...
- .9-浅析webpack源码之NodeEnvironmentPlugin模块总览
介绍Compiler的构造比较无趣,不如先过后面的,在用到compiler的时候再做讲解. 这一节主要讲这行代码: // 不管这里 compiler = new Compiler(); compile ...
- 将STM32 iap hex文件与app hex文件合并为一个hex文件
日前公司产品需要增加远程升级功能,boot loader程序写好后交予生产部门使用时他们反馈每个产品程序需要刷写两次(一个boot loader 一个app程序),生产进度变慢浪费时间,于是乎研究如何 ...
- shell脚本删除N天前的目录-----附linux和mac上date命令的不同
背景: 每日构建的东西.按日期放到不同的目录里. 现在天的构建放到2015-06-01里,明天的就放到2015-06-02里,依次类推.时间久了.须要一个脚本删除N天前的目录.(本例中N=7.即删除一 ...
- Android调用系统自带的文件管理器进行文件选择
http://blog.csdn.net/zqchn/article/details/8770913的补充 FileUtils文件 public class FileUtils { publi ...
- HDU 3569 Imaginary Date 简单期望
推一下公式.就会发现是这个.. 由于设结果有x种方案.则每一个数字出现的概率都均等,然后和就是x*m 每种方案的概率是1/x 每一个数出现的概率都是1/n 所以每一个方案的和就是 sum/n *m # ...
- 单行json_ajax
html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3 ...
- mysql 常用sql语句 一
创建数据库 create database if not exists wsp_test default charset utf8 collate utf8_general_ci 使用数据库 use ...