You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP使用GD库生成文字图片时如何调整增大字体大小?

你当前使用的imagestring()是GD库的基础文字绘制接口,第二个参数为内置字体编号,仅支持1-5的取值,数值越大字体越大。如果只需要小幅度放大文字,直接把该参数调大即可,比如修改为最大的5:

imagestring($im, 5, 5, 5,  $yazi, $text_color);

如果内置最大字体还是无法满足大小需求,就需要换成支持自定义字号、自定义字体的imagettftext()函数实现,该方法可以任意设置文字尺寸,需要提前准备一份TTF格式的字体文件(比如常用的宋体、黑体字体文件都可以)放到项目可读取的路径下,修改后的代码参考:

<?php
// 创建图像
$im = imagecreatetruecolor($x, $y);
$text_color = imagecolorallocate($im, $r, $g, $b);

// 自定义字体大小,单位为磅,可随意调整数值
$font_size = 20;
// TTF字体文件路径,这里填你自己的字体文件实际路径
$font_path = './simsun.ttf';
// 绘制文字,参数依次为:图像资源、字体大小、旋转角度、x坐标、y坐标、文字颜色、字体路径、文字内容
imagettftext($im, $font_size, 0, 5, $font_size + 5, $text_color, $font_path, $yazi);

// 保存图片
imagejpeg($im, 'esmer.jpg');
imagedestroy($im);
?>

使用该方法的注意事项:

  • imagettftext的y坐标对应的是文字基线的位置,和imagestring以文字左上角为基准的规则不同,你可以根据显示效果调整坐标值避免文字被截断
  • 如果需要输出中文,要保证$yazi变量的编码为UTF-8,否则会出现乱码
  • 确保你的PHP环境开启了GD库的FreeType支持,绝大部分默认安装的PHP环境都已经开启该配置

内容的提问来源于stack exchange,提问作者user16578365

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 15:45:02