//输出图片文字自动换行
function autowrap($fontsize, $angle, $fontface, $string, $width) {
// 参数分别是 字体大小, 角度, 字体名称, 字符串, 预设宽度
$content = "";
// 将字符串拆分成一个个单字 保存到数组 letter 中
for ($i = 0; $i < mb_strlen($string); $i++) {
$letter[] = mb_substr($string, $i, 1);
}
foreach($letter as $l) {
$teststr = $content.$l;
$testbox = imagettfbbox($fontsize, $angle, $fontface, $teststr);
// 判断拼接后的字符串是否超过预设的宽度
if (($testbox[2] > $width) && ($content !== "")) {
$content .= PHP_EOL;
}
$content .= $l;
}
return $content;
}
试试 mb_strlen($str, 'utf8')######关键是楼主切字符串的办法弱爆了。
$width) && ($content !== "")) { $content .= PHP_EOL; } $content .= $l; } return $content; } $str = '摇落深知宋玉悲风流儒雅亦吾师怅望千秋一洒泪萧条异代不同时江山故宅空文藻云雨荒台岂梦思最是楚宫俱泯灭舟人指点到今疑'; $box = autowrap(16, 0, 'simhei.ttf', $str, 160); var_dump($box);
$width) && ($content !== "")) { $content .= PHP_EOL; } $content .= $l; } return $content; } $str = '摇落深知宋玉悲风流儒雅亦吾师怅望千秋一洒泪萧条异代不同时江山故宅空文藻云雨荒台岂梦思最是楚宫俱泯灭舟人指点到今疑'; $box = autowrap(16, 0, 'simhei.ttf', $str, 160); var_dump($box);
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。