【发布时间】:2013-12-25 13:14:43
【问题描述】:
我正在尝试将文本从数据库写入图像。文本有时包含很长的行,因此它不适合图像上的一行。
截至目前,我得到的输出为:http://prntscr.com/29l582
这是代码:
$imageCreator = imagecreatefrompng($i+1 . ".png");
$textColor = imagecolorallocate($imageCreator, 0, 0, 0);
$textfromdb = $factformatted['fact'];
$y = imagesy($imageCreator) - 228;
$dimensions = imagettfbbox(20, 0, $fontname, $textfromdb);
$x = ceil(($imageWidth - $dimensions[4]) / 2);
imagettftext($imageCreator, 20, 0, $x, $y, $textColor, $fontname, $textfromdb);
imagepng($imageCreator, "./fact".$i.".png");
有人可以帮我解决吗?
【问题讨论】:
-
你到底想怎么适应这个?插入换行符?更改字体大小等?
-
我更喜欢换行,但是如果字符串实际上比图像宽度大,那么就必须减小字体大小!
-
检查this 讨论,了解通过利用
imagettfbbox()函数以最大允许文本宽度(以像素为单位) 换行的可能方法