我正在使用PHP GD并尝试绘制文本并制作图像大小 只是适合文本。
我发现了这个问题并尝试了Martin Geisler的代码。
Resize image size according to size of text
它看起来很好用,但是当我尝试其他文本时,有些文字已经脱离了图像。
当然,我可以添加额外的填充,但是必需的填充取决于文本。 那太过分了。
有没有人知道这样做的正确方法?
提前致谢。
// Martin Geisler's version using MS Gothic
header("Content-type: image/png");
$q = 'Image example';
$font = './msgothic.ttc'; // MS Gothic
$size = 30;
$bbox = imageftbbox($size, 0, $font, $q);
$width = $bbox[2] - $bbox[6];
$height = $bbox[3] - $bbox[7];
$im = imagecreatetruecolor($width, $height);
$green = imagecolorallocate($im, 60, 240, 60);
imagefttext($im, $size, 0, -$bbox[6], -$bbox[7], $green, $font, $q);
imagepng($im);
imagedestroy($im);
答案 0 :(得分:0)
这是与您正在撰写的文字宽度相关的问题。 除非你使用固定字体,否则3小于3 o。
不是试图创建具有正确比例的图像,而是希望将其设置得足够大,然后裁剪掉周围未使用的空间。
创建图像后,可以将边框设为纯色,然后裁剪。 请参阅此处以获取有关如何进行裁剪的说明: