27 图形图像GD

本文涉及的产品
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介: 路老师在知乎上分享了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 编辑

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

相关文章
|
编解码 Python
Python 技术篇-使用PyQt5库获取电脑屏幕桌面的宽、高和分辨率
Python 技术篇-使用PyQt5库获取电脑屏幕桌面的宽、高和分辨率
1284 0
Python 技术篇-使用PyQt5库获取电脑屏幕桌面的宽、高和分辨率
|
27天前
|
PHP 计算机视觉 开发者
PHP中的图像处理:GD库与Imagick的应用比较
在PHP开发中,图像处理是一个常见的需求,尤其是在开发图像生成、编辑、缩放等功能时。PHP提供了两种主流的图像处理库——GD库和Imagick,它们各自具有不同的特点和适用场景。本文将对这两者进行比较,帮助开发者根据项目需求选择合适的图像处理工具。
|
7月前
|
Ubuntu Linux Windows
Linux应用开发基础知识——LCD上的矢量字体Freetype(六)
Linux应用开发基础知识——LCD上的矢量字体Freetype(六)
344 0
Linux应用开发基础知识——LCD上的矢量字体Freetype(六)
|
7月前
|
定位技术
R语言GD包地理探测器分析时报错、得不到结果等情况的解决方案
R语言GD包地理探测器分析时报错、得不到结果等情况的解决方案
172 1
|
缓存 PHP 数据安全/隐私保护
一文看懂 GD2库
一文看懂 GD2库
一文看懂 GD2库
|
算法 PHP
php绘制奥运五环(GD)
php绘制奥运五环(GD)
184 0
php绘制奥运五环(GD)
|
计算机视觉
我的Qt作品(2)基于机器视觉+运动控制的数控软件,使用Qt和OpenCV库
我的Qt作品(2)基于机器视觉+运动控制的数控软件,使用Qt和OpenCV库
417 0
我的Qt作品(2)基于机器视觉+运动控制的数控软件,使用Qt和OpenCV库
|
Ubuntu Shell Linux
ImageMagick 命令行下图像处理的利器
ImageMagick是一系列的用于修改、加工图像的命令行工具。ImageMagick能够快速地使用命令行对图片进行操作,对大量的图片进行批处理,或者是集成到bash脚本里去。
484 0
ImageMagick 命令行下图像处理的利器