27 图形图像GD

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 Tair(兼容Redis),内存型 2GB
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 路老师在知乎上分享了PHP语言的知识,帮助大家入门并深入了解PHP。本文主要介绍了PHP的图形图像处理技术,包括如何查看GD库信息、创建简单图像以及在照片上添加文字等内容。 示例代码展示了如何使用GD库创建一个绿色图像和在图片上添加文字。下一篇文章将介绍如何使用图形图像处理技术生成验证码。

有胆量你就来跟着路老师卷起来! -- 纯干货,技术知识分享

路老师给大家分享PHP语言的知识了,旨在想让大家入门PHP,并深入了解PHP语言。

image.gif 编辑


上篇文章介绍了Session的高级应用,实现了将session写入到数据库mysql中。本篇文章开始介绍PHP的图形图像处理技术这块内容。

1 GD库查看及应用

1.1 查看gd的库信息

我们使用的是phpstudy集成工具,默认extension=php_gd2.dll是开启的,所以我们直接在index.php里输入phpinfo()函数就能查看gd库信息。

<?php
echo phpinfo();
?>

image.gif

image.gif 编辑

1.2 创建简单图像

使用GD2函数库可以实现各种图形图像的处理。创建画布是使用GD2库来创建图像的第一步,无论创建什么样的图像,首先都需要创建一个画布,其他别的操作都是放在这个画布上完成的。创建画布可以使用imagecreate()函数实现。

案例:创建一个宽400像素,高100像素,背景色为RGB(50,200,50),最后输出一个png格式的绿色图像。

<?php
$img = imagecreate(400,100);
$bg = imagecolorallocate($img,50,200,50);
header("Content-type:image/png");
imagepng($img);
?>

image.gif

image.gif 编辑

1.3 在照片上添加文字

GD2函数库中的imageTTFText()函数可以实现用TrueType字体向图像写入文本的功能。语法如下:

array imagettftext(resource $image, float $size, float $angle, int $x, int $y ,int $color,string $fontfile ,string $text)

image.gif

参数如下表:

参数 说明
image 由图像创建函数返回的图像资源
size 字体尺寸。根据GD库的版本,为像素尺寸(GD1)或者点(磅)尺寸(GD2)
angle 角度制表示的角度,0度为从左向右读的文本,更高的数值表示逆时针旋转。例如90表示从下往上读。
x 由x,y所表示的坐标定义了第一个字符的基本点(大概是字符的左下角)。这和imagestring()不同,其xy定义了第一个字符的左上角,例如top left为 0,0
y y坐标。他设定了字体基线的位置,不是字符的最底端。
color 颜色。
fontfile 是想要使用的TrueType字体的路径
text UTF-8编码格式的文本字符串
<?php
header("Content-type:image/jpeg");
$path= "./images/123.jpg";
$img = imagecreatefromjpeg($path);
$textcolor = imagecolorallocate($img,255,0,255);
$fnt = "C:/Windows/Fonts/FORTE.TTF";
$str = "I'm Mr Lu";
imageTTFText($img,70,0,50,270,$textcolor,$fnt,$str);
imagejpeg($img);
imagedestroy($img);
?>

image.gif

image.gif 编辑

下一篇 使用图形图像处理 技术生成验证码

相关文章
|
10月前
|
SQL PHP 数据库
20 PHP如何捕获sql错误
路老师带你深入学习PHP,掌握技术干货。本文介绍了PDO中捕获SQL错误的三种模式:默认模式、警告模式和异常模式,以及如何使用errorCode()和errorInfo()方法进行错误处理。
216 2
|
10月前
|
存储 IDE 开发工具
磁盘的物理组成
本文介绍了磁盘的物理组成和如何新增磁盘。磁盘主要由主轴、磁盘盘、磁头和磁头臂组成,其中磁道、簇、扇面和扇区是磁盘的基本存储单元。新增磁盘的步骤包括关闭操作系统、选择磁盘类型和容量、创建新虚拟磁盘并完成配置。常见的磁盘接口类型有IDE、SCSI、SATA和SAS。
325 1
|
10月前
|
PHP
23 七天免登录案例
路老师分享了PHP语言的知识,帮助大家入门并深入了解PHP。本文通过一个“七天免登录”的案例,详细介绍了从创建用户表、登录页面到登录检测和退出登录的完整过程。代码示例详尽,适合初学者学习。
168 2
|
10月前
|
存储 Shell Linux
用户和用户组
本文介绍了Linux系统中的用户账户和组的基本概念,包括普通用户和超级用户(root)的定义和区别,以及组的概念和作用。文章还详细描述了用户账户和组的相关文件(如/etc/passwd、/etc/shadow、/etc/group和/etc/gshadow)的结构和内容,并提供了创建和删除用户账户及组的基本命令和选项。
517 2
|
10月前
|
Python
pyqt6 制作一个颜色调节器 01
本文介绍了一个使用 PyQt 制作的颜色调节器,通过滑动滚动条或旋钮来调整 RGB 三色,实现颜色的微调。具体步骤包括:1. 设计 UI 页面;2. 分析颜色调整逻辑;3. 将数据反馈到 UI 页面。最终实现了颜色随滑块变化而实时更新的效果。
225 1
|
10月前
|
Java 程序员 PHP
01 入门PHP就来我这-安装phpstudy
路老师的PHP入门教程,带你从零开始学习PHP。首先下载并安装phpStudy,接着配置域名和端口,最后创建并运行第一个PHP文件。内容详实,适合初学者。
190 3
01 入门PHP就来我这-安装phpstudy
|
10月前
|
Shell Linux
Shell基础 01
Shell 是一种脚本语言,用于操作 Linux 服务器。本文介绍了 Shell 变量的定义和作用域,以及多命令运行的练习。变量定义时需注意字符串的引用方式,变量可分为局部和全局。多命令运行中,通过逻辑运算符 `&&` 和 `||` 实现条件判断和命令执行。
136 5
|
10月前
|
Linux Shell
Linux常用命令-1
本课程要求学生熟悉Linux系统终端窗口和命令基础,掌握文件目录类、系统信息类、进程管理类及其他常用命令,学时为3-6小时。课程内容涵盖Linux命令的特点、常见命令的使用方法及其应用场景,如文件浏览、目录切换、内容显示等。建议学生逐个操作命令并及时反馈问题。
127 7
|
10月前
|
网络协议 Linux 网络安全
RHEL 网络配置
本文介绍了Linux网络配置的基本方法,重点讲解了如何使用nmtui命令配置网络参数、查看网络信息及管理网络会话服务。同时,文章还介绍了通过nmtui、hostnamectl和nmcli命令修改主机名的具体步骤,帮助网络管理员快速调整Linux系统的网络设置。
245 4
|
10月前
|
安全 Linux Shell
ssh 远程控制服务
SSH(Secure Shell)是一种用于远程登录的安全协议,相比FTP和Telnet,它提供了更高的安全性,避免了明文传输带来的风险。要使用SSH远程管理Linux系统,需要配置sshd服务。本文介绍了如何克隆Linux服务器、修改网络配置,并通过SSH连接两台服务器,最后在目标服务器上创建一个日志文件。
207 5