使用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网站基础优化方法小结
Sep 29 PHP
Discuz 模板语句分析及知识技巧
Aug 21 PHP
PHP 字符串分割和比较
Oct 06 PHP
ThinkPHP的RBAC(基于角色权限控制)深入解析
Jun 17 PHP
从零开始学YII2框架(三)扩展插件yii2-gird
Aug 20 PHP
IIS下PHP的三种配置方式对比
Nov 20 PHP
php使用GD2绘制几何图形示例
Feb 15 PHP
浅谈ThinkPHP中initialize和construct的区别
Apr 01 PHP
用php+ajax新建流程(请假、进货、出货等)
Jun 11 PHP
360搜索引擎自动收录php改写方案
Apr 28 PHP
PHP连接MySQL数据库并以json格式输出
May 21 PHP
laravel 创建命令行命令的图文教程
Oct 23 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
多重?l件?合查?(一)
2006/10/09 PHP
php入门教程 精简版
2009/12/13 PHP
PHP正则的Unknown Modifier错误解决方法
2010/03/02 PHP
使用php批量删除数据库下所有前缀为prefix_的表
2014/06/09 PHP
PHP使用GD库输出汉字的方法【测试可用】
2016/11/10 PHP
JavaScript 原型学习总结
2010/10/29 Javascript
jquery select动态加载选择(兼容各种浏览器)
2013/02/01 Javascript
简略说明Javascript中的= =(等于)与= = =(全等于)区别
2013/04/16 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
2013/07/08 Javascript
JS 页面计时器示例代码
2013/10/28 Javascript
浅谈checkbox的一些操作(实战经验)
2013/11/20 Javascript
初步认识JavaScript函数库jQuery
2015/06/18 Javascript
javascript设计模式之对象工厂函数与构造函数详解
2015/07/30 Javascript
js跨域请求数据的3种常用的方法
2015/12/01 Javascript
如何将你的AngularJS1.x应用迁移至React的方法
2018/02/01 Javascript
Vue指令v-for遍历输出JavaScript数组及json对象的常见方式小结
2019/02/11 Javascript
Javascript基于OOP实实现探测器功能代码实例
2020/08/26 Javascript
查看python下OpenCV版本的方法
2018/08/03 Python
浅谈python str.format与制表符\t关于中文对齐的细节问题
2019/01/14 Python
Django 内置权限扩展案例详解
2019/03/04 Python
Python 堆叠柱状图绘制方法
2019/07/29 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
Python异常继承关系和自定义异常实现代码实例
2020/02/20 Python
法国在线药房:1001Pharmacies
2021/03/07 全球购物
C语言50道问题
2014/10/23 面试题
Java程序开发中如何应用线程
2016/03/03 面试题
土木工程专业个人求职信
2013/12/30 职场文书
高二英语教学反思
2014/01/19 职场文书
公司司机岗位职责范本
2014/03/03 职场文书
销售口号大全
2014/06/11 职场文书
节约能源标语
2014/06/17 职场文书
自主招生自荐信格式
2015/03/04 职场文书
2015年公务员试用期工作总结
2015/05/28 职场文书
如何计划开一家便利店?
2019/07/31 职场文书
详解JAVA的控制语句
2021/11/11 Java/Android
python数字类型和占位符详情
2022/03/13 Python