这样做。请记住字体文件“ARIAL.TTF”放置在当前目录下:

// Create a 650x150 image and create two colors

$im = imagecreatetruecolor(650, 150);

$white = imagecolorallocate($im, 255, 255, 255);

$black = imagecolorallocate($im, 0, 0, 0);

// Set the background to be white

imagefilledrectangle($im, 0, 0, 649, 149, $white);

// Path to our font file

$font = './arial.ttf';

//test it out

for($i=2;$i<10;$i++)

WriteTextForMe($im, $font, str_repeat($i, $i), -140 + ($i*80), 70 + rand(-30, 30), -160 + (($i+1)*80), 150, $black);

//this function does the magic

function WriteTextForMe($im, $font, $text, $x1, $y1, $x2, $y2, $allocatedcolor)

{

//draw bars

imagesetthickness($im, 2);

imagerectangle($im, $x1, $y1, $x2, $y2, imagecolorallocate($im, 100,100,100));

//draw text with dynamic stretching

$maxwidth = $x2 - $x1;

for($size = 1; true; $size+=1)

{

$bbox = imagettfbbox($size, 0, $font, $text);

$width = $bbox[2] - $bbox[0];

if($width - $maxwidth > 0)

{

$drawsize = $size - 1;

$drawX = $x1 + $lastdifference/2;

break;

}

$lastdifference = $maxwidth - $width;

}

$size--;

imagettftext($im, $drawsize, 0, $drawX, $y1 - 2, $allocatedcolor, $font, $text);

}

// Output to browser

header('Content-type: image/png');

imagepng($im);

imagedestroy($im);

?>

它使用imagettfbbox函数来获取文本的宽度,然后循环在字体大小以获得正确的大小,其中心并显示它。

因此,它输出以下:

php GD库文字居中,PHP GD ttftext居中对齐相关推荐

  1. php GD库实现图片合并、文本居中 案例:生成分享海报

    因有需求要做到用php服务端去生成分享海报,并要求把头像.文字.以及二维码跟海报背景图合并,所以研究了一下php的GD库来实现该需求 本次用到的函数介绍 getimagesize 获取图片的宽高 im ...

  2. php gd库截图,php使用gd库实现截屏的实例代码

    PHP5.2.2以上版本的GD库实现了两个截屏函数:imagegrabscreen 和 imagegrabwindow,它们分别用于截取整个屏幕和截取某个窗口(同ALT+PrintScreen)的屏幕 ...

  3. php gd库画线,[PHP] GD库(十)绘制线段与圆弧 imageline、imagesetstyle 与 imagearc 函数...

    [PHP] GD库(十)绘制线段与圆弧 imageline.imagesetstyle 与 imagearc 函数 imageline() 函数用于绘制一条线段. imagearc() 函数用于绘制椭 ...

  4. linux php gd库安装,Linux系统gd库安装步骤说明

    gd库是PHP处理图形的扩展库,它提供了一系列用来处理图片的API(应用程序编程接口),使用gd库可以处理图片或者生成图片.在网站上,gd库通常用来生成缩略图,或者对图片加水印,或者生成汉字验证码,或 ...

  5. mac php gd库,mac下安装GD库FreeType

    MacBook Pro安装的新系统10.10.3,PHP环境也是默认就有的,GD库在默认情况下也安装过了,但在使用验证码的时候,提示GD库不支持FreeType,这里我们手动安装一下. 法一: 安装 ...

  6. php 中绑定的 gd 库,为PHP添加GD库支持

    1.安装zlib,一般Centos系统自带已经安装好,可以用以下命令去查看: [root@Test-Web2 ~]# rpm -qa | grep zlib zlib-1.2.1.2-1.2 zlib ...

  7. php gd库 圆形头像,基于 GD 库生成圆形头像

    基于 GD 库生成圆形头像 laravel 友好的图片处理库 Intervention Image 可以绘制圆形(circle()), 但是好像并不能将即存的图片裁剪成圆形, 这里提供一个基于 GD ...

  8. php中gd库的使用,php GD库的使用

    两大功能:自己画,对于原有图片改变 PHP中GD库的使用 PHP 不仅限于只产生 HTML 的输出,还可以创建及操作多种不同格式的图像文件.PHP提供了一些内置的图像信息函数,也可以使用GD函数库创建 ...

  9. centos php gd库,Centos 编译安装GD库

    详细编译安装GD库整个过程,让php对更多图形方面gif jpg(jpeg) png wbmp xml 和 ttf字体 的支持. 我先启动CentOS5.3 Linux 可以说如果要配置一台LAMP服 ...

最新文章

  1. Idea开发Java web项目目录结构
  2. python里help和dir的区别_Python中dir()与help()的使用
  3. SQL I/O操作学习笔记
  4. progress组件(进度条)
  5. 【Flink】Flink 如何在本地IDEA恢复检查点 不通过IDEA 不通过 flink run 方法
  6. win10iot c语言,值还是不值?——树莓派3 Win10 IoT系统体验
  7. JAVA虚拟机内存分配原则 (转
  8. 学习 shell —— 参数的解析:$0/1/2、$#、 $@、$?(set -e)
  9. 制作U盘macos系统
  10. Modem analyze by T32 tool.
  11. HDU - 4311 Meeting point-1(最小曼哈顿距离和)
  12. iPad屏幕不亮但是有声音
  13. 感应门铃的c语言程序,基于STM32单片机智能门禁门铃热释人体感应光照报警+RFID门禁电磁锁设计-(原理图+程序源码)...
  14. revit学习-界面介绍
  15. 【动态规划DP】开餐馆
  16. Chris and Magic Square
  17. IText实现Html转PDF itextpdf-5.5.5.jar
  18. 奶茶介绍-网页实验报告
  19. JS大小转化B KB MB GB的转化方法
  20. Java使用JaxWsDynamicClientFactory和HttpURLConnection调取Webservice接口

热门文章

  1. 时间频率科学数据管理控制与应用
  2. 医疗数据治理——构建高质量医疗大数据智能分析数据基础
  3. 作者:陈昕(1982-),女,博士,中国科学院计算机网络信息中心研究员
  4. 客座编辑:温孚江,男,现任山东农业大学校长、教授,农业大数据创新战略联盟理事长。...
  5. 【Git】Python项目依赖库过大无法提交的问题
  6. 【Java】基于IDE的JUnit软件测试入门
  7. 【CSS3】CSS3文本字体相关属性大全
  8. 用任意合法序列建立一棵二叉树(洛谷P1305题题解,Java语言描述)
  9. 2019年春运贵州道路客运预计达6700万人次
  10. 制作Docker镜像的两种方式