GD库知识点
GD库:PHP的一个扩展库,主要用于绘制动态图,根据数据动态响应的图片 如统计图 验证码
其他的用途如:处理已有图像 图片的缩放 裁剪 图片水印 文字水印 1.安装GD库
2.画图步骤:创建背景图像(画布资源);画图;输出图形;释放资源 绘图
创建一个画布:imagecreatetruecolor(宽,高),默认黑色
显示图像:header("content-type:image/图片格式类型");
图片格式类型:gif(动图)\jpg(jpeg)-网站用的最普遍,大小较小,色彩较多\png-色彩还原度最好,较大
图像显示:
imagejpeg($img);//$img-画布资源
imagegif($img);
imagepng($img);
保存图像:imagejpeg($img,"图片路径(含图片名字)");
既要显示又要保存:
imagepng($img);//显示
imagepng($img,"img/2.png");//保存 定义颜色:
$red = imagecolorallocate(图片资源,RGB-红色,RGB-绿,RGB-蓝); 画点:
imagesetpixel(图片资源,x坐标,y坐标,颜色);
画线:两个点坐标
imageline(图片资源,x1坐标,y1坐标,x2,y2,颜色);
画虚线:
1)样式的数组设置
$style = array(//5个像素的黄色 6个像素的蓝色
$yellow,$yellow,$yellow,$yellow,$yellow,$yellow,
$blue,$blue,$blue,$blue,$blue,$blue
);
2)imagesetstyle(图片资源,$style);
3)画线:imageline($img,10,10,100,100,IMG_COLOR_STYLED); 矩形:
imagerectangle(图片资源,起点x,起点y,终点x,终点y,颜色); 起点\终点 组成的是一条对角线
imagefilledrectangle(图片资源,起点x,起点y,终点x,终点y,颜色) 图形颜色填充 圆形:
imageellipse(图片资源,圆心x,圆心y,宽度,高度,颜色);
imagefilledellipse(图片资源,圆心x,圆心y,宽度,高度,颜色) 图形颜色填充 弧线:
imagearc(图片资源,圆心x,圆心y,宽,高,起点度数,终点度数,颜色); 多边形
imagepolygon();
imagefilledpolygon($img,
array(//顶点坐标数组(按顺序)
10,0,
50,20,
100,90,
120,50,
30,60
),
5,//顶点个数
颜色
); 画字符串:
imagestring(图片资源,字体(1-5),坐标x,坐标y,"字符串",颜色)
* 不能打印中文 imagettftext(图片资源,字号,角度,坐标x,坐标y,颜色,"字体文件路径(含文件名)","字符串(可以打印中文)"); ===========================================
常用颜色:
$red = imagecolorallocate($img,255,0,0);
$green= imagecolorallocate($img,0,255,0);
$blue = imagecolorallocate($img,0,0,255);
$white = imagecolorallocate($img,255,255,255);
$black = imagecolorallocate($img,0,0,0);
$yellow = imagecolorallocate($img,255,255,0); //保存或者输出给浏览器 如果写了第二个参数则表示将图像流输出到文件
header("content-type:images/png");
imagepng($res);//保存为PNG格式的图片
imagejpeg($res,"2.jpg");//保存为jpg格式的图片
imagegif($res,"3.gif");//保存为gif格式的图片 imagedestroy($res);//销毁图片资源
GD库知识点的更多相关文章
- PHP的GD库
GD库 PHP通过GD库,可以对JPG.PNG.GIF.SWF等图片进行处理.GD库常用在图片加水印,验证码生成等方面. 绘制线条 要对图形进行操作,首先要新建一个画布,通过imagecreatetr ...
- gd库
1.开启GD库扩展 去掉注释: extension=php_gd2.dll extension_dir='ext目录所在位置' 2.检测GD库是否开启 phpinfo(); //检测扩展是够开启 ex ...
- 已安装php 编译安装 gd库拓展模块
参考资料:http://wenku.baidu.com/link?url=EgXFShYxeJOZSYNQ_7RCBC-6X8OcRRCqVm4qCv49uBk57d6vLBoUpfYdQ-KqJRs ...
- Mac php使用gd库出错 Call to undefined function imagettftext()
第一次在Mac下使用ThinkPHP,用到验证码功能时报如题的错误: Call to undefined function Think\imagettftext() 然后检查自己的GD库,发现安装上了 ...
- GD库处理图像
在PHP5中,动态图象的处理要比以前容易得多.PHP5在php.ini文件中包含了GD扩展包,只需去掉GD扩展包的相应注释就可以正常使用了.PHP5包含的GD库正是升级的GD2库,其中包含支持真彩图像 ...
- 烂泥:centos单独编译安装gd库
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 这几天一直在弄一个商城系统,该系统的源码及数据库都已经上传并创建完毕.但是在安装该系统时,却提示缺少gd库.如下: 使用php探针查看,发现php确实没 ...
- phpize 扩展GD库 安装 ! 环境--centos 7 +nginx 1.7.11+php 5.6.7
使用phpize编译GD库安装,先安装前置库libjpeg libpng zlib freetype等 都是下面php编译的几个选项 先看php编译的选项: --with-gd=DIR ...
- PHP->利用GD库新建图像
1.确认php中GD库是否开启 在PHP配置文件php.ini中查找extension=php_gd2.dll,去掉前边的(分号) ';' 即可,一般php是默认开启的 2.绘画步骤 创建一个画布(画 ...
- 关于织梦系统不支持php中GD库的问题
大多数人在显成的PHP的CMS时,如织梦CMS,安装的时候不支持GD库,就导致整个网站的验证码不显示,以下是个人对此类问题的解决办法: 1.首先找到wamp的安装目录,找到PHP的文件夹,打开php. ...
随机推荐
- JavaWeb总结(八)—EL表达式
一.EL表达式简介 EL全名Expression Language.主要有以下作用. 1.获取数据 EL表达式主要用于替换JSP页面的脚本表达式,以及各种类型的Web域中检索Java对象.获取数据.( ...
- 02 Learning to Answer Yes/No
Perceptron Learning Algorithm 感知器算法, 本质是二元线性分类算法,即用一条线/一个面/一个超平面将1,2维/3维/4维及以上数据集根据标签的不同一分为二. 算法确定后, ...
- Windows安装mysql-python提示:error: Microsoft Visual C++ 9.0 is required
Windows安装mysql-python提示:error: Microsoft Visual C++ 9.0 is required,Get it from http://aka.ms/vcpyth ...
- chrome浏览器tab页内存占用变大,网站变慢为哪般?
问题概述: 公司做的是BS应用. 之前我们的后台服务器程序是带状态的,用ehcache存储登录状态:这两天被我改成了redis存储,应用本身不再存储登录状态. 然后自测,我在测试某个很耗时间的网页操作 ...
- 《Python自然语言处理》第一章-练习17
问题描述: 使用text9.index()查找词sunset的索引值.你需要将这个词作为一个参数插入到圆括号之间.通过尝试和出错的过程中,找到完整的句子中包含这个词的切片. 解题思路: 用两个集合,一 ...
- js继承之原型链方式实现
温故而知新: 在之前的文章已经重点了解了原型对象,今天就理一理这个原型对象在原型链式的继承中的使用 function a(x,y){this.x=x;this.y=y;} //定义一个函数,当构造函数 ...
- nodejs将JSON字符串转化为JSON对象
如何将JSON字符串转化为JSON对象? JSON.parse(str) JSON是javascript的一个内置对象,提供了转换JSON对象与字符串互相转换的方法: 问题来了,道理我都懂 ...
- 1001. Exponentiation高精度运算总结
解题思路 这道题属于高精度乘法运算,要求输入一个实数R一个指数N,求实数R的N次方,由于R有5个数位,而N又特别大,因此用C++自带的数据类型放不下. 解题思路是通过数组储存每次乘积结果和底数的每一位 ...
- Unity 检测物体是否在相机视野范围内
需求: 类似NPC血条,当NPC处于摄像机视野内,血条绘制,且一直保持在NPC头顶. 开始: 网上查找资料,然后编写代码: public RectTransform rectBloodPos; voi ...
- js中元素(图片)切换和隐藏显示问题
这个知识点其实也简单,(当然是在理清思路的情况下),在没预习的情况下听的还真是艰难,上课以来唯一的一次懵逼了一天,感觉乱乱的,全是新属性,所以今晚的我破天荒的熬夜敲代码,一定要弄懂! 现在就来梳理下头 ...