700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > php 长微博程序 PHP生成长微博

php 长微博程序 PHP生成长微博

时间:2019-03-04 14:26:04

相关推荐

php 长微博程序 PHP生成长微博

目前仅支持纯文字的长微博生成,而且输入的html只能包含p标签。 过段时间会增加图片以及页眉页脚支持。 /pid-1907.asp /** * @name cwb * php生成长微博 * @param * $str 格式化后的html,仅支持p标签 * $size 字体大小

目前仅支持纯文字的长微博生成,而且输入的html只能包含p标签。

过段时间会增加图片以及页眉页脚支持。

/pid-1907.asp

/**

* @name cwb

* php生成长微博

* @param

* $str 格式化后的html,仅支持p标签

* $size 字体大小

* $font_path字体路径

* $save_path 图片保存路径

* @todo 增加图片支持

* @author leo108 root@

*/

function cwb($str,$size,$font_path,$save_path){

$str = strip_tags($str,'

');

$matches = array();

preg_match_all("/

/", $str, $matches);

foreach ($matches[0] as $key => $value) {

$matches[0][$key] = preg_replace("/

]*>/", "", $matches[0][$key]);

$matches[0][$key] = str_replace('', '', $matches[0][$key]);

$matches[0][$key] = trim($matches[0][$key]);

}

$newrows = array();

foreach ($matches[0] as $key => $str) {

$strlen = mb_strlen($str,'utf-8');

if ($strlen == 0) {

continue;

}

$text = '';

for($i = 0; $i < $strlen; $i++) {

$char = mb_substr($str,$i,1,'utf-8');

$text . $char;

$bbox = imagettfbbox($size,0,$font_path,$text.$char);

if($bbox[2] > 320){

$newrows[] = $text;

$text = $char;

}else{

$text .= $char;

}

}

$newrows[] = $text;

$newrows[] = '';

}

$height = count($newrows) * 16 + 30;

$im = imagecreatetruecolor(360, $height);

$white = imagecolorallocate($im, 255, 255, 255);

$black = imagecolorallocate($im, 0, 0, 0);

imagefill($im, 0, 0, $white);

imagecopyresampled($im,$thumb_im,20,10,0,0,$pic_width,$pic_height,$pic_width,$pic_height);

$curheight = $pic_height + 30;

foreach ($newrows as $key => $value) {

imagettftext($im , $size, 0, 20, $curheight, $black, $font_path, $value);

$curheight += 16;

}

imagepng($im,$save_path);

}

PHP

发布php中文网,转载请注明出处,感谢您的尊重!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。