博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php课程 8-28 php如何绘制生成显示图片
阅读量:5905 次
发布时间:2019-06-19

本文共 2303 字,大约阅读时间需要 7 分钟。

php课程 8-28 php如何绘制生成显示图片

一、总结

一句话总结:gd库轻松解决

 

1、php图片操作生成的图的两种去向是什么?

一种在页面直接输出,一种存进本地磁盘

 

2、php操作图片的库有哪些?

PHP: Image Processing and Generation - Manual

http://php.net/manual/en/refs.utilspec.image.php
Cairo
Exif
GD
Gmagick
ImageMagick

 

3、如何防止网站强刷注册?

a、验证码

b、ip限制,比如这个ip只能注册30个用户,多了就让你明天再来

 

4、如何防止网站暴力破解用户名?

记录用户名,如果输入错5次,那只能明天再来登录

第一次没有验证码,输入出错之后验证码就出来

 

5、网站上面图片的缩放、裁剪、加水印是怎么实现的?

交给的php,gd库轻松解决

 

6、php中常见的资源类型有哪些?

数据库连接资源

gd库画布资源

 

7、php变量或者说资源的释放是什么样的?

一个脚本执行完,执行到最后之后,里面的所有变量或者说资源都会被删除,所以多个php脚本的重复变量是不会相互影响的。

 

8、html如何声明本文档是图片?

header头中content-type

header('content-type:image/jpeg');

 

9、gd库的使用需要额外引包么?

不需要,直接进去就开始干就行了,比如说创建画布资源

1 

 

10、php中gd画图的场景有哪些?

1.验证码

2.缩放
3.裁剪
4.水印

 

11、php中创建图像的六个步骤是什么?

1.创建画布资源

$img=imagecreatetruecolor(500,300);
2.准备颜色
$black=imagecolorallocate($img,0,0,0);
$white=imagecolorallocate($img,255,255,255);
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,0,255,0);
$blue=imagecolorallocate($img,0,0,255);
3.填充画布
imagefill($img,0,0,$black);
4.在画布上画图像或文字
imagefilledellipse($img,250,150,200,200,$white);
5.输出最终图像或保存最终图像
header('content-type:image/jpeg');
1)图片从浏览器上输出
imagejpeg($img);
2)把图片保存到本地
imagejpeg($img,'jin.jpg');
6.释放画布资源
imagedestroy($img);

1 

 

 

二、php如何绘制生成显示图片

1、相关知识

php中gd画图的场景:

1.验证码
2.缩放
3.裁剪
4.水印
php中创建图像的六个步骤:
1.创建画布资源
$img=imagecreatetruecolor(500,300);
2.准备颜色
$black=imagecolorallocate($img,0,0,0);
$white=imagecolorallocate($img,255,255,255);
$red=imagecolorallocate($img,255,0,0);
$green=imagecolorallocate($img,0,255,0);
$blue=imagecolorallocate($img,0,0,255);
3.填充画布
imagefill($img,0,0,$black);
4.在画布上画图像或文字
imagefilledellipse($img,250,150,200,200,$white);
5.输出最终图像或保存最终图像
header('content-type:image/jpeg');
1)图片从浏览器上输出
imagejpeg($img);
2)把图片保存到本地
imagejpeg($img,'jin.jpg');
6.释放画布资源
imagedestroy($img);
绘制图像:
• imagefill();   //区域填充
• imagesetpixel();  //画一个像素
• imageline();    //画一条线
• imagerectangle();   //画一个矩形
• imagefilledrectangle();   //画一矩形并填充
• imagepolygon();     //画一个多边形
• imagefilledpolygon();  //画一个多边形并填充
• imageellipse();  //画一个椭圆
• imagefilledellipse();    //画一个椭圆并填充
• imagearc();    //画一个椭圆弧
• imagefilledarc();  //画一个椭圆弧并填充
• imagestring();   //水平地画一行字符串
• imagestringup();  //垂直地画一行字符串
• imagechar();   //水平地画一个字符
• imagecharup();   //垂直地画一个字符
• imagettftext();  //用truetype字符向图像画一个字符串

 

 

2、代码

1 

 

 

 

 

 

转载于:https://www.cnblogs.com/Renyi-Fan/p/9279604.html

你可能感兴趣的文章
iostat各字段的来源和真实含义
查看>>
在 word 中对正文和目录进行分节显示页码
查看>>
关于面试总结4-python笔试题
查看>>
TCC-Win32中文文档[翻译]
查看>>
Silverlight Client←→Server数据同步备忘代码
查看>>
Silverlight使用socket tcp简单实现聊天室功能
查看>>
IOS多线程读写Sqlite问题解决
查看>>
g_vouchernosuppl 表几千万条数据的问题
查看>>
adapter
查看>>
子类继承的成员方法
查看>>
判断二叉树是否平衡、是否完全二叉树、是否二叉排序树
查看>>
一张超诡异的HTML图片“松鼠” - 是图片同时也是web页面
查看>>
【开篇导航】—Entity Framework实例详解
查看>>
管理故事:学会放弃
查看>>
【精品推荐】web开发人员应该知道的31个jQuery模态对话框
查看>>
D3DXColor的操作
查看>>
Winform中DataGridView的DataGridViewCheckBoxColumn使用方法(选中与选不中)
查看>>
SSI
查看>>
Extjs4中tabPanel
查看>>
实用编程技术之多个头文件中变量的重复定义
查看>>