我創建透明文本 - >與PHP的圖像,並迄今如此好。唯一的問題是,我希望能夠由於固定寬度而具有文字自動換行功能。或者,也可以在文本中插入分隔符。有沒有人有過這樣的經驗?這裏是我的代碼...在多行中使用imagettftext函數?任何人之前做過?
<?php
$font = 'arial.ttf';
$text = 'Cool Stuff! this is nice LALALALALA LALA HEEH EHEHE';
$fontSize = 20;
$bounds = imagettfbbox($fontSize, 0, $font, $text);
$width = abs($bounds[4]-$bounds[6]);
$height = abs($bounds[7]-$bounds[1]);
$im = imagecreatetruecolor($width, $height);
imagealphablending($im, false);
imagesavealpha($im, true);
$trans = imagecolorallocatealpha($im, 255, 255, 255, 127);
// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$black = imagecolorallocate($im, 0, 0, 0);
imagecolortransparent($im, $black);
imagefilledrectangle($im, 0, 0, $width, $height, $trans);
// Add the text
imagettftext($im, $fontSize, 0, 0, $fontSize-1, $grey, $font, $text);
imagepng($im, "image.png");
imagedestroy($im);
?>
此代碼的工作赫然,但我只是有一個問題......你怎麼又把每條線分開? – 2012-04-13 00:43:46
代替迭代線簡單地添加PHP_EOL當線變得太長,如下所示:如果'($的lineWidth <$ maxLineWidth){ \t \t \t \t \t \t \t $ newText = $值。 ''; \t \t \t \t \t \t}其他{ \t \t \t \t \t \t \t $ newText = PHP_EOL。 $值; \t \t \t \t \t \t}' – Yevgeniy 2012-05-15 03:37:53