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. ...
随机推荐
- 统一我的博客文章的CSS样式代码
一.前因后果 之前写博客的时候也有写一些CSS代码来美化,不过都是凌乱的,每次再写一篇,又得重头来过去想,或者去拷贝原来的CSS设置.由于逻辑性不强,找一个配套的格式出来要花费不少时间. 今天我把部分 ...
- 用Gradle构建Spring Boot项目
相比起Maven的XML配置方式,Gradle提供了一套简明的DSL用于构建Java项目,使我们就像编写程序一样编写项目构建脚本.本文将从无到有创建一个用Gradle构建的Spring Boot项目, ...
- Java ClassLoader加载机制
一.体系结构(自上向下) 1.Bootstrap ClassLoader(BootStrapClassLoader) --- 启动类加载器或者叫引导类加载器,加载jdk核心的APIs,这些APIs一般 ...
- ABPZero中的Name和SurName处理
使用ABPzero的朋友们都知道,User表中有Name和Surname两个字段,这两个字段对于国内的用户来说相当的不友好. 我们在尝试了很多的方法之后,发现无法完美将他们干掉. 所以尝试使用了一个比 ...
- apache-maven-3.3.9 环境配置
本地 maven 环境 安装 Maven 之前要求先确定你的 JDK 已经安装配置完成.Maven是 Apache 下的一个项目,目前我的新版本是 3.3.9. 1.官网下载 Maven:http:/ ...
- VUE进阶(路由等)
初级教程:http://www.cnblogs.com/dmcl/p/6137469.html VUE进阶 自定义指令 http://cn.vuejs.org/v2/guide/custom-dire ...
- Elasticsearch搜索之best_fields分析
顾名思义,best_field就是获取最佳匹配的field,另个可以通过tie_breaker来控制其他field的得分,boost可以设置权重(默认都为1). 下面从宏观上来讲的简单公式: scor ...
- 交作业啊,python爬取58的页面
第一次写博文,好紧张啊,写这么烂怎么给别人看啊先做下总结: 刚开始学习python,自我感觉python写起来确实很方便,各种库,各种语法糖,不过刚接触,一下子记不下来这么多东西,总感觉乱乱的,用的多 ...
- 2017-4-26 winform tab和无边框窗体制作
TabIndex-----------------------------------确定此控件将占用的Tab键顺序索引 Tabstop-------------------------------指 ...
- Linux-进程描述(5)之进程环境
main函数和启动例程 当内核使用一个exec函数执行C程序时,在调用main函数之前先调用一个特殊的启动例程,可执行程序将此例程指定为程序的起始地址.启动例程从内核获取命令行参数和环境变量,然后为调 ...