PHP生成长微博

WBOY
リリース: 2016-06-06 20:08:48
オリジナル
1158 人が閲覧しました

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

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

http://leo108.com

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

http://leo108.com/pid-1907.asp

/**
 * @name cwb
 * php生成长微博
 * @param 
 *       $str 格式化后的html,仅支持p标签
 *       $size 字体大小
 *       $font_path字体路径
 *       $save_path 图片保存路径
 * @todo  增加图片支持
 * @author  leo108 root@leo108.com
 */
function cwb($str,$size,$font_path,$save_path){
    $str = strip_tags($str,'<p>');
    $matches = array();
    preg_match_all("/</p><p>/", $str, $matches);
    foreach ($matches[0] as $key => $value) {
        $matches[0][$key] = preg_replace("/</p><p>]*>/", "", $matches[0][$key]);
        $matches[0][$key] = str_replace('</p>', '', $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  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.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!