使用GD库生成带阴影文字的图片


Posted in PHP onMarch 27, 2015

最近使用GD库来进行微信公共账号的图片生成,研究了一下GD库文字阴影效果的生成同时也发现了GD库的强大。

GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片。 在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等。
GD库的安装什么的网上都有,现在很多虚拟空间也都支持,这里就不再赘述。下面通过我实际应用代码的实例和相关的注释为大家介绍一下GD库的使用方法。

原图:

使用GD库生成带阴影文字的图片

生成效果图:

使用GD库生成带阴影文字的图片

代码如下:

$str="北京";
$str2= "空气质量:轻度污染";
// 通过图片生成一个对象$im
$im = imagecreatefromjpeg("images/3.jpg");
//载入字体zt.ttf
$fnt = "zt.ttf";
//创建颜色,用于文字字体的白和阴影的黑
$white=imagecolorallocate($im,222,229,207);
$black=imagecolorallocate($im,50,50,50);
//创建关于相对图片位置的函数,方便调用
$top=100;
$left=60;
$top2=170;
//在图片中添加文字,imagettftext (image,size,angle, x, y,color,fontfile,text)
imagettftext($im,41, 0, $left+1, $top+1, $black, $fnt, $str);
imagettftext($im,41, 0, $left, $top, $white, $fnt, $str);
imagettftext($im,43, 0, $left+1,$top2+1 , $black, $fnt, $str2);
imagettftext($im,43, 0, $left,$top2, $white, $fnt, $str2);
//将$im输出
ImageJpeg($im);
//销毁$im对象
ImageDestroy($im);

接下来详细解释一下:

imagettftext (image,size,angle, x, y,color,fontfile,text)
imagettftext() 是将字符串 text画到 image所代表的图像上,从坐标 x,y(左上角为 0, 0)开始,角度为 angle,颜色为 color,使用 fontfile 所指定的 TrueType 字体文件。

由 x,y 所表示的坐标定义了第一个字符的基本点大概在字符的左下角。

angle 以角度表示,0 度为从左向右阅读文本,更高的值表示逆时针方向(即如果值为 90 则表示从下向上阅读文本)。

fontfile 是想要使用的 TrueType 字体的文件名。

text 是文本字符串,可以包含 UTF-8 字符序列。

color 是颜色的索引值。

以上所述就是本文的全部内容了,希望大家能够喜欢。

请您花一点时间将文章分享给您的朋友或者留下评论。我们将会由衷感谢您的支持!

PHP 相关文章推荐
用PHP和ACCESS写聊天室(五)
Oct 09 PHP
Discuz 5.0 中读取纯真IP数据库函数分析
Mar 16 PHP
php 获取当前访问的url文件名的方法小结
Feb 08 PHP
PHP APC缓存配置、使用详解
Mar 06 PHP
php 5.6版本中编写一个PHP扩展的简单示例
Jan 20 PHP
php文件缓存方法总结
Mar 16 PHP
PHP实现使用DOM将XML数据存入数组的方法示例
Sep 27 PHP
使用ucenter实现多站点同步登录的讲解
Mar 21 PHP
laravel 实现关闭CSRF(全部关闭、部分关闭)
Oct 21 PHP
PHP连接MySQL数据库操作代码实例解析
Jul 11 PHP
php实现简易计算器
Aug 28 PHP
PHP7 新增常量
Mar 09 PHP
Ubuntu12下编译安装PHP5.3开发环境
Mar 27 #PHP
php按字符无乱码截取中文的方法
Mar 27 #PHP
php实现字符串翻转的方法
Mar 27 #PHP
Ubuntu中启用php的mail()函数并解决发送邮件速度慢问题
Mar 27 #PHP
php字符串函数学习之substr()
Mar 27 #PHP
php字符串函数学习之strstr()
Mar 27 #PHP
php判断一个数组是否为有序的方法
Mar 27 #PHP
You might like
PHP+FLASH实现上传文件进度条相关文件 下载
2007/07/21 PHP
PHP处理Oracle的CLOB实例
2014/11/03 PHP
Yii配置文件用法详解
2014/12/04 PHP
php实现删除空目录的方法
2015/03/16 PHP
PHP入门教程之字符串处理技巧总结(转换,过滤,解析,查找,截取,替换等)
2016/09/11 PHP
JS中彻底删除JSON对象组成的数组中的元素
2020/09/22 PHP
Javascript 跨域访问解决方案
2009/02/14 Javascript
js变形金刚文字特效代码分享
2015/08/20 Javascript
javascript三种代码注释方法
2016/06/02 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
vuejs响应用户事件(如点击事件)
2017/03/14 Javascript
使用原生js写ajax实例(推荐)
2017/05/31 Javascript
react+redux的升级版todoList的实现
2017/12/18 Javascript
angularJs中json数据转换与本地存储的实例
2018/10/08 Javascript
JS实现canvas简单小画板功能
2020/06/23 Javascript
JS实现电脑虚拟键盘的操作
2020/06/24 Javascript
vue实现登录、注册、退出、跳转等功能
2020/12/23 Vue.js
详解uniapp的全局变量实现方式
2021/01/11 Javascript
Python数据库的连接实现方法与注意事项
2016/02/27 Python
Python编程之gui程序实现简单文件浏览器代码
2017/12/08 Python
Python中 map()函数的用法详解
2018/07/10 Python
Python读取csv文件分隔符设置方法
2019/01/14 Python
Python学习笔记基本数据结构之序列类型list tuple range用法分析
2019/06/08 Python
Python利用神经网络解决非线性回归问题实例详解
2019/07/19 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
2019/08/21 Python
Python分割训练集和测试集的方法示例
2019/09/19 Python
python命令 -u参数用法解析
2019/10/24 Python
通过python 执行 nohup 不生效的解决
2020/04/16 Python
Pyecharts地图显示不完成问题解决方案
2020/05/11 Python
HTML5自定义视频播放器源码
2020/01/06 HTML / CSS
main 主函数执行完毕后,是否可能会再执行一段代码,给出说明
2012/12/05 面试题
学校门卫管理制度
2014/01/30 职场文书
大学生档案自我鉴定(2篇)
2014/10/14 职场文书
2015社区健康教育工作总结
2015/05/20 职场文书
千手观音观后感
2015/06/03 职场文书
金正昆讲礼仪观后感
2015/06/11 职场文书