第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

請(qǐng)各位幫我看看怎么回事,圖片顯示是破裂的

<?php?

require_once 'string.func.php';

//通過(guò)GD庫(kù)做驗(yàn)證碼

//創(chuàng)建畫(huà)布

session_start();

$width=80;

$height=28;

// 新建一個(gè)真彩色圖像?

$image=imagecreatetruecolor($width,$height);

//為一幅圖像分配顏色?

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

//為一幅圖像分配顏色?

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

//畫(huà)一矩形并填充?

imagefilledrectangle($image, 1, 1, $width-2, $height-2, $black);

$type=1;

$length=4;

$chars=buildRandomString($type,$length);

$sess_name="verify";

$_SESSION[$sess_name]=$chars;

$fontfiles=array('MSYH.TTF');

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

$size=mt_rand(14,18);

$angle=mt_rand(-15,15);

$x=5+$i*$size;

$y=mt_rand(20,26);

$fontfile="../fonts".$fontfiles[mt_rand(0,count($fontfiles)-1)];

$text=substr($chars,$i,1);

// 用 TrueType 字體向圖像寫(xiě)入文本?

? ? imagettftext($image, $size, $angle, $x, $y, $color, $fontfile, $text);

}

header("content-type:image/gif");

imagegif($image);

imagedestroy($image);





<?php?

function buildRandomString($type=1,$length=4){

if($type==1){

? ? $chars=join("",range(0,9));

}

elseif($type==2){

? ? $chars=join("",array_merge(range("a","z"),range("A","Z")));

}

elseif($type==3){

? ? $chars=join("",array_merge(range("a","z"),range("A","Z"),range(0,9)));

}

if($length>strlen($chars)){

? ? exit("字符串長(zhǎng)度不夠");

}

$chars=str_shuffle($chars);

return substr($chars,0,$length);

}


正在回答

1 回答

我?guī)湍愀暮昧?,運(yùn)行沒(méi)問(wèn)題。

你的問(wèn)題是:

  1. imagettftext()方法第7個(gè)參數(shù)$color,是未知的,他需要一個(gè)顏色來(lái)設(shè)置字體顏色,所以在這個(gè)這個(gè)方法之前先用$color =?imagecolorallocate();生成一個(gè)顏色。

  2. 你把這句$fontfile="../fonts".$fontfiles[mt_rand(0,count($fontfiles)-1)];放在循環(huán)里面,不建議這么做,雖然沒(méi)問(wèn)題,但如果代碼運(yùn)算龐大的話會(huì)耗費(fèi)更多資源,建議放到for外面去。這倒不是嚴(yán)重問(wèn)題,組要是下面。

    你的這句:$fontfile="../fonts".$fontfiles[mt_rand(0,count($fontfiles)-1)];中“../fonts”之后沒(méi)有加上目錄字符“/”,這樣字符拼接起來(lái)的時(shí)候會(huì)是這樣的"../fontsMSYH.TTF",應(yīng)該修改成這樣:$fontfile="../fonts/".$fontfiles[mt_rand(0,count($fontfiles)-1)];?

    然后拼接后的字符是這樣才是正確的"../fonts/MSYH.TTF"。

    下面是改好的代碼:

<?php?
require_once?'string.func.php';
//通過(guò)GD庫(kù)做驗(yàn)證碼
//創(chuàng)建畫(huà)布
session_start();
$width=80;
$height=28;
//?新建一個(gè)真彩色圖像?
$image=imagecreatetruecolor($width,$height);
//為一幅圖像分配顏色?
$white=imagecolorallocate($image,255,255,?255);
//為一幅圖像分配顏色?
$black=imagecolorallocate($image,?0,?0,0);
//畫(huà)一矩形并填充?
imagefilledrectangle($image,?1,?1,?$width-2,?$height-2,?$black);
$type=1;
$length=4;
$chars=buildRandomString($type,$length);
$sess_name="verify";
$_SESSION[$sess_name]=$chars;
$fontfiles=array('MSYH.TTF');

//放到for外面,fonts之后要加"/"
//?用?TrueType?字體向圖像寫(xiě)入文本?
$fontfile="../fonts/".$fontfiles[mt_rand(0,count($fontfiles)-1)];

for($i=0;$i<$length;$i++){
	$size=mt_rand(14,18);
	$angle=mt_rand(-15,15);
	$x=5+$i*$size;
	$y=mt_rand(20,26);
	$text=substr($chars,$i,1);
	//產(chǎn)生一個(gè)用于填充字體的隨機(jī)顏色
	$color?=?imagecolorallocate($image,?mt_rand(50,?90),?mt_rand(80,?200),?mt_rand(90,?180));
????
????imagettftext($image,?$size,?$angle,?$x,?$y,?$color,?$fontfile,?$text);
}
header("content-type:image/gif");
imagegif($image);
imagedestroy($image);


0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

熊貓的家園 提問(wèn)者

謝謝你,我試試看
2016-11-16 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消
手把手教你實(shí)現(xiàn)電商網(wǎng)站后臺(tái)開(kāi)發(fā)
  • 參與學(xué)習(xí)       117248    人
  • 解答問(wèn)題       2101    個(gè)

手把手教你用PHP搭建電子商務(wù)平臺(tái),由淺入深教你搭建電商系統(tǒng)

進(jìn)入課程

請(qǐng)各位幫我看看怎么回事,圖片顯示是破裂的

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)