天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

php文本轉(zhuǎn)圖片自動(dòng)換行的方法

今天無(wú)意中瀏覽網(wǎng)面的時(shí)候發(fā)現(xiàn)一個(gè)長(zhǎng)微博,它可以將文本轉(zhuǎn)成png圖片,于是乎就研究一下php文本轉(zhuǎn)圖片的方式,其實(shí)只要是用到了php的擴(kuò)展庫(kù),GD庫(kù)來(lái)生成圖片,再通過(guò)圖像函數(shù)生成,代碼寫出來(lái)后,發(fā)現(xiàn)如果文字太多了,圖片就會(huì)超過(guò)屏幕的寬度,導(dǎo)致瀏覽器右拉條的出現(xiàn),于是,想想有沒(méi)有什么辦法可以使圖片能夠自動(dòng)換行,通過(guò)GG,發(fā)現(xiàn)了一篇文章,通過(guò)判斷字符串和截取字符串再拼接起來(lái)實(shí)現(xiàn)文本圖片自動(dòng)換行,以下貼出此代碼,以學(xué)習(xí)之中:

復(fù)制代碼 代碼如下:
<?php
header ("Content-type: image/png");
mb_internal_encoding("UTF-8"); // 設(shè)置編碼

function autowrap($fontsize, $angle, $fontface, $string, $width) {
// 這幾個(gè)變量分別是 字體大小, 角度, 字體名稱, 字符串, 預(yù)設(shè)寬度
 $content = "";

 // 將字符串拆分成一個(gè)個(gè)單字 保存到數(shù)組 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);
  // 判斷拼接后的字符串是否超過(guò)預(yù)設(shè)的寬度
  if (($testbox[2] > $width) && ($content !== "")) {
   $content .= "/n";
  }
  $content .= $l;
 }
 return $content;
}

$bg = imagecreatetruecolor(300, 290); // 創(chuàng)建畫布
$white = imagecolorallocate($bg, 255, 255, 255); // 創(chuàng)建白色
$text = "前段時(shí)間練習(xí)使用 php 的 GD 庫(kù)時(shí),為了文本的自動(dòng)換行糾結(jié)了很久。雖然可以通過(guò)插入 \n 實(shí)現(xiàn)換行,但考慮到文本中既有中文又有英文,強(qiáng)制限定每多少個(gè)文字就換行的效果很差。后來(lái)終于找到了一個(gè)英文下的自動(dòng)換行的方法,其大概原理是將空格作為分隔符,將字符串分割為一個(gè)個(gè)單詞,然后再一個(gè)接一個(gè)地拼接在一起,判斷其長(zhǎng)度是否超過(guò)畫布,若超過(guò)則換行再拼接,否則繼續(xù)拼接。考慮到中文需要將每個(gè)文字都拆開,所以我進(jìn)行了一點(diǎn)修改,完整代碼如下。";
$text = autowrap(12, 0, "simsun.ttc", $text, 280); // 自動(dòng)換行處理

// 若文件編碼為 GB2312 請(qǐng)將下行的注釋去掉
// $text = iconv("GB2312", "UTF-8", $text);

imagettftext($bg, 12, 0, 10, 30, $white, "simsun.ttc", $text);
imagepng($bg);
imagedestroy($bg);
?>

php技術(shù)php文本轉(zhuǎn)圖片自動(dòng)換行的方法,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 97国产成人精品免费视频 | 浴室里强摁做开腿呻吟的漫画男男 | 嫩草国产精品99国产精品 | 十8禁用B站在线看漫画 | 久久久久青草大香线综合精品 | 牛和人交videos欧美 | 婷婷射精AV这里只有精品 | 国产精品久久久久久搜索 | 亚洲视频在线免费看 | 亚洲AV久久久噜噜噜噜 | china男士同性视频tv | 久久精品国产亚洲AV久五月天 | 久久99亚洲AV无码四区碰碰 | 色在线视频亚洲欧美 | 91精品国产品国语在线不卡 | 精品无码久久久久久动漫 | 草莓AV福利网站导航 | 小黄文污到你湿 | 精品国产国偷自产在线观看 | 色综合五月激情综合色一区 | 蜜芽最新域名解析网站 | 秋霞电影在线观看午夜伦 | 国产人妻人伦精品836700 | 午夜国产精品视频在线 | 晓雪老师我要进你里面好爽 | 黄色三级视频在线观看 | 国产Av男人的天堂精品良久 | 精品福利一区 | 日日碰狠狠躁久久躁77777 | 国产女人91精品嗷嗷嗷嗷 | 日韩免费视频一区 | 日本不卡一二三 | YELLOW视频在线观看免费版高清 | 激情欧美日韩一区二区 | 女子叉开腿让男子桶免费软件 | 亚洲国产综合人成综合网站00 | 欧美日韩高清一区二区三区 | 伊人久综合 | 国产嫩草影院精品免费网址 | 中国农村妇女真实BBWBBWBBW | 日韩中文字幕欧美在线视频 |