广告招租
广告招租
点击投放广告
完全免费的字体下载网站
魔趣吧站长

[建站技巧] GD文字生成图片自动居中方法实现代码

[复制链接]
查看: 307|回复: 0
发表于 2019-2-11 18:30:55 | 显示全部楼层 |阅读模式
GD文字生成图片自动居中方法实现代码
GD文字生成图片自动居中方法实现代码 $ O: I; ?3 z- J5 q" P: `(w ww.mo qu8.com)

* c1 S0 C& ]& D. g3 ?2 r% Dphp引入了一个函数: % F+ N  U9 s* w+ O* C' r# n( i1 e(ww w.m oq u8.c om)
imagettfbbox() – 取得使用 TrueType 字体的文本的范围 9 b; g( a7 c( v% h% L( r(ww w.m oq u8.c om)
返回结果:
- D, T$ t. b' e2 K: e+ ]array imagettfbbox ( float size, float angle, string fontfile, string text ) 3 e2 s  D/ X5 t# @& L6 w- U/ Q2 e! y(w w w.m oqu 8.c om)
本函数计算并返回一个包围着 TrueType 文本范围的虚拟方框的像素大小,返回一个数组。3 G' N- J  @) B* \3 y(w ww.mo qu8.com)
$ K6 ~2 d' e- m5 Z1 Y8 |1 K! ~# l  @(w ww.mo qu8.com)
类似于这样:
  1. array(8) {
  2.     [0]=> int(0)
  3.     [1]=> int(9)
  4.     [2]=> int(335)
  5.     [3]=> int(9)
  6.     [4]=> int(335)
  7.     [5]=> int(-56)
  8.     [6]=> int(0)
  9.     [7]=> int(-56)
  10. }
复制代码
也就相当于下面这样,返回了这一串字体的四个点的坐标:
, _2 s  s: q" @" W! {2 b4 K! J; Z7 a
- i2 Z  b6 B7 V) d$ [% n2 |, D5 n(www.m oqu8.c om)
GD文字生成图片自动居中方法实现代码
' ]/ I9 A/ C5 a( C4 @7 o- L4 l6 e. o3 A. \+ @; v" j1 l1 Z(w ww.mo qu8.com)
于是最后得到将字体居中的准确的算法:
  1. $width = $height = 500;
  2.     $size = 50;
  3.     $file = './1.ttf';
  4.     $content = "你好啊世界";
  5.     $path = './1.png';
  6.     $a = imagettfbbox($size, 0, $file, $content);   //得到字符串虚拟方框四个点的坐标
  7.     $len = $a[2] - $a[0];
  8.     $x = ($width-$len)/2;
  9.     $y = $a[3]-$a[5]
  10.     $dst = imagecreatetruecolor($width,$height);
  11.     $black = imagecolorallocate($dst, 0, 0, 0);
  12.     $white = imagecolorallocate($dst, 255, 255, 255);
  13.     imagefill($dst,0,0,$white);
  14.     imagettftext($dst,$size,0,$x,$y,$black, $file, $content);
  15.     imagepng($dst,$path);
  16.     imagedestroy($dst);
复制代码
. V0 L* r% ^/ z6 K2 K(w w w.m oq u8.c om)

# A; P" M& L# D; C. r1 s; h. T

魔趣吧版权声明1,本文内容及相关资源来源于网络,版权归版权方所有!本站原创内容版权归本站所有,请勿转载!
2,本文内容仅代表作者本人观点,不代表本网站立场,作者文责自负,本站资源仅供学习研究,请勿非法使用,否则后果自负!请下载后24小时内删除!
3,本文内容,包括但不限于源码、文字、图片等,仅供参考使用,本站不对其安全性,正确性等作出保证。但本站会尽量审核会员发表的内容
4,如您认为本文内容侵犯了您的权益,请与我们联系!我们将在5个工作日内做出处理!本站保留全部修改、解释、更新本声明的权利魔趣吧

魔趣吧,全网领先的建站资源下载基地!Discuz模板、Discuz插件、素材、特效,源码,建站,就上魔趣吧!! 【通告】近期发现部分竞争网站和小人诋毁抹黑魔趣吧,对此,我们只有一句话,事实胜于雄辩!!用心为站长服务,魔趣吧不怕任何邪门歪道!【魔趣吧唯一官方网站https://www.moqu8.com,请谨防假冒网站!】
回复

使用道具 举报/反馈

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

魔趣吧在线客服
关闭
欢迎来到魔趣吧
如果你有建站技术问题、仿站需求、模板插件修改需求,请联系我们的技术支持!高效率,低价格的帮你搞定!
请认准魔趣吧唯一官网:www.moqu8.com,谨防假冒网站!
建站技术支持(收费)
资源互换/合作
魔趣吧在线客服
快速回复 返回列表
普惠站长,魔趣吧VIP限时大降价X

普惠站长,魔趣吧VIP限时大降价

一直以来,部分垃圾站长搭建的各种资源站,用各种恶心的手段和可怜的一点资源不断的敲诈新站长,魔趣吧也曾...

立即抢福利!
魔趣吧
做感动人心的好资源站

关于魔趣吧|魔趣建站

魔趣吧,志在打造全国最大的建站资源共享平台。 本站提供海量免费的建站资源,包括WordPress模板、Discuz精仿模板、PHPWind模板、phpcms模板、Discuz精仿插件、帝国cms模板、织梦模板等上万精品模板!同时,提供各种建站素材、JS特效、整站程序源码!
服务中文站长,传播分享精神!建站,就来魔趣吧!!
2015-2019  技术支持:魔趣吧 ( 豫ICP备15026783号-4 )  
HTTPS安全认证
|网站地图 安全运行天