繁体   English   中英

使图像适合文本

[英]Make image just fit to a text

我正在使用 PHP GD 并尝试绘制文本并使图像大小恰好适合文本。

我发现了这个问题并尝试了 Martin Geisler 的代码。

根据文本大小调整图像大小

它看起来工作正常,但是当我尝试其他文本时,有些文本脱离了图像。

当然,我可以添加额外的填充,但所需的填充取决于文本。 这太临时了。

有谁知道这样做的正确方法?

提前致谢。

// 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);

http://www.betatechnology.jp/~ao/imageexample.png

这是与您正在编写的文本的宽度有关的问题。 除非您使用固定字体,否则 3 i 小于 3 o。

与其试图创建一个具有完全正确比例的图像,我宁愿让它足够大,然后裁剪掉它周围未使用的空间。

由于您创建了图像,您可以将边框设置为纯色,然后对其进行裁剪。 有关如何进行裁剪的说明,请参见此处:

从 PHP 中的图像中裁剪空白

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM