我想把一些文字放在两点之间。文本是动态的,不管它包含什么,都应该居中。
我正在尝试以下操作:
$dims = imagettfbbox(130, 0, './Calibri.ttf', "JULY");
$width = ($dims[2])-($dims[0]);
imagettftext($my_img , 130, 0, 1196-($width/2) , 700, $text_colour, './Calibri.ttf', "JULY");
在x=711处有一个点,在x=1907处有一个点,这是我从中得到1196的地方,因为1907-711=1196。
在我的逻辑中,
1196-($width/2)
应该起作用,因为参数是文本的第一个像素。但从图像上可以看出,它并没有居中。
最佳答案
从你的解释中我明白1196-($width/2)
是错误的。
你应该找到盒子的中间,在x = 711
和x = 1907
之间:
$x_center = 711 + (1907 - 711) / 2
$x_start = $x_center - ($width / 2)
希望有帮助。
关于php - php如何在2点之间居中显示文字?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28023677/