PHP:imageftbbox
PHP imageftbbox中文本边界框的应用是什么 在的示例中,它用于确定imagefttext函数的坐标。有必要吗?也许我错过了什么PHP:imageftbbox,php,image,gd,Php,Image,Gd,PHP imageftbbox中文本边界框的应用是什么 在的示例中,它用于确定imagefttext函数的坐标。有必要吗?也许我错过了什么 ... // First we create our bounding box $bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group'); // This is our cordinates for X and Y $x = $bbox[0] + (imagesx($im) / 2)
...
// First we create our bounding box
$bbox = imageftbbox(10, 0, $font, 'The PHP Documentation Group');
// This is our cordinates for X and Y
$x = $bbox[0] + (imagesx($im) / 2) - ($bbox[4] / 2) - 5;
$y = $bbox[1] + (imagesy($im) / 2) - ($bbox[5] / 2) - 5;
imagefttext($im, 10, 0, $x, $y, $black, $font, 'The PHP Documentation Group');
...
这对函数imageftbbox和imagettfbbox允许您知道文本在图像上的空间大小(第一个用于自由类型文本,第二个用于真实类型文本) 这样,如果您有一个生成一些图像并在其上写入可变文本(用户输入或类似的内容)的应用程序,您可以使用诸如imagefttext或ImageTTFTText(相同的区别-字体)之类的函数来决定如何/在何处放置该文本 因此,您可以执行以下操作:
$bbox = imagettfbbox(34, 0, 'myriadb.otf', strtoupper($name)); //font size 34, text in a horizontal line, use myriadb.otf as font, the user name as variable text
$text_width = $bbox[2]; // this is how much space the name will take
$margin = (CARD_WIDTH-($text_width))/2; // a constant knowing the width of the resulting card.. this way we will center the name..
imagettftext($image, 34, 0, $margin, $y, $white, 'myriadb.otf', strtoupper($name));// $image resource, 34-same size, same angle, the margin is the the x coordinate, fixed $y, color, font and the same text
他有关于他的广泛信息
以下是链接信息中的一些相关信息:
(图片版权归Flylib所有)
从上图中,您可以看到有4个点和8个信息(如文档所述):
同样,如文档所述,无论角度如何,此信息都是相对于文本的。因此,如果将文本顺时针旋转90度,则边界框将变为:
Array information Bounding box coordinate
===================================================================
0 X coordinate of the upper left hand corner
1 Y coordinate of the upper left hand corner
2 X coordinate of the lower left hand corner
3 Y coordinate of the lower left hand corner
4 X coordinate of the lower right hand corner
5 Y coordinate of the lower right hand corner
6 X coordinate of the upper right hand corner
7 Y coordinate of the upper right hand corner
我相信另一个资源将帮助您更好地掌握包围盒的基本概念:
Array information Bounding box coordinate
===================================================================
0 X coordinate of the upper left hand corner
1 Y coordinate of the upper left hand corner
2 X coordinate of the lower left hand corner
3 Y coordinate of the lower left hand corner
4 X coordinate of the lower right hand corner
5 Y coordinate of the lower right hand corner
6 X coordinate of the upper right hand corner
7 Y coordinate of the upper right hand corner