|
| |
|
|
| |
äëÿ: FaStY
(12.03.2006 â 15:27)
| | | Åñëè âû âûçûâàåòå â ñêðèïòå vcode(); òî,
1) Íå äîëæíî áûòü íå êàêèõ echo | print è òä.
2) Ïåðåä óøêàìè (<? ?>) íå äîëæíî áûòü ïðîáåëîâ èëè ïåðåâîäà íîâîé ñòðîêè.
Ïðèìåð: img.php
Èñïîëüçîâàíèå:
| |
| |
|
|
| |
|
|
| |
äëÿ: Ñàíÿ
(12.03.2006 â 13:54)
| | | íåà, âñå ðàâíî íå ïîëó÷àåòñÿ:(
ÿ ñäåëàë ôóíêöèþ ïîìåñòèë òóäà ñêðèïò:
function vcode()
{
$img_x = 80; //ÈØàØÝÐ Ø×ÞÑàÐÖÕÝØï, ßÞ ãÜÞÛçÐÝØî-100
$img_y = 26; //²ëáÞâÐ Ø×ÞÑàÐÖÕÝØï, ßÞ ãÜÞÛçÐÝØî-30
$num_n = 5; //ÇØáÛÞ æØäà, default-4
$font_min_size = 12; //¼ØÝØÜÐÛìÝëÙ àÐ×ÜÕà èàØäâÐ, ßÞ ãÜÞÛçÐÝØî-12
$lines_n_max = 2; //¼ÐÚáØÜÐÛìÝÞÕ çØáÛÞ èãÜÞÒëå ÛØÝØÙ, ßÞ ãÜÞÛçÐÝØî-2
$nois_percent = 5; //·ÐèãÜÛÕÝÝÞáâì æÒÕâÐÜØ äÞÝÐ Ø âÕÚáâÐ, Ò ßàÞæÕÝâÐå, ßÞ ãÜÞÛçÐÝØî-3
$angle_max = 10; //¼ÐÚáØÜÐÛìÝëÙ ãÓÞÛ ÞâÚÛÞÝÕÝØï Þâ ÓÞàØ×ÞÝâÐÛØ ßÞ çÐáÞÒÞÙ áâàÕÛÚÕ Ø ßàÞâØÒ, ßÞ ãÜÞÛçÐÝØî-20
$im=imagecreate($img_x, $img_y);
//áÞ×ÔÐÕÜ ÝÕÞÑåÞÔØÜëÕ æÒÕâÐ
$text_color = imagecolorallocate($im, 0, 0, 0); //æÒÕâ âÕÚáâÐ
$nois_color = imagecolorallocate($im, 0, 0, 0); //æÒÕâ ×ÐèãÜÛïîéØå âÞçÕÚ Ø ÛØÝØÙ
$img_color = imagecolorallocate($im, 255, 255, 255); //æÒÕâ äÞÝÐ
//×ÐÛØÒÐÕÜ Ø×ÞÑàÐÖÕÝØÕ äÞÝÞÒëÜ æÒÕâÞÜ
imagefill($im, 0, 0, $img_color);
//² ßÕàÕÜÕÝÝÞÙ $number ÑãÔÕâ åàÐÝØâìáï çØáÛÞ, ßÞÚÐ×ÐÝÝÞÕ ÝÐ Ø×ÞÑàÐÖÕÝØØ
$number='';
for ($n=0; $n<$num_n; $n++){
$num=rand(0,9);
$number.=$num;
$font_size=rand($font_min_size, $img_y/2);
$angle=rand(360-$angle_max,360+$angle_max);
$font_cur="BOD_BI.ttf";
//ÒëçØáÛÕÝØÕ ÚÞÞàÔØÝÐâ ÔÛï ÚÐÖÔÞÙ æØäàë, äÞàÜãÛë ÞÑÕáßÕçØÒÐîâ ÝÞàÜÐÛìÝÞÕ àÐáßÞÛÞÖÝØÕ
//ßàØ ÛîÑëå ×ÝÐçÕÝØïå àÐ×ÜÕàÞÒ æØäàë Ø Ø×ÞÑàÐÖÕÝØï
$y=rand(($img_y-$font_size)/4+$font_size, ($img_y-$font_size)/2+$font_size);
$x=rand(($img_x/$num_n-$font_size)/2, $img_x/$num_n-$font_size)+$n*$img_x/$num_n;
imagettftext($im, $font_size, $angle, $x, $y, $text_color, $font_cur, $num);
};
//²ëçØáÛïÕÜ çØáÛÞ "×ÐèãÜÛÕÝÝëå" ߨÚáÕÛÞÒ
$nois_n_pix=round($img_x*$img_y*$nois_percent/100);
//×ÐèãÜÛïÕÜ Ø×ÞÑàÐÖÕÝØÕ ßØÚáÕÛÐÜØ æÒÕâÐ âÕÚáâÐ
for ($n=0; $n<$nois_n_pix; $n++){
$x=rand(0, $img_x);
$y=rand(0, $img_y);
imagesetpixel($im, $x, $y, $nois_color);
};
//×ÐèãÜÛïÕÜ Ø×ÞÑàÐÖÕÝØÕ ßØÚáÕÛÐÜØ äÞÝÞÒÞÓÞ æÒÕâÐ
for ($n=0; $n<$nois_n_pix; $n++){
$x=rand(0, $img_x);
$y=rand(0, $img_y);
imagesetpixel($im, $x, $y, $img_color);
};
$lines_n=rand(0,$lines_n_max);
//ßàÞÒÞÔØÜ "×ÐèãÜÛïîéØÕ" ÛØÝØØ æÒÕâÐ âÕÚáâÐ
for ($n=0; $n<$lines_n; $n++){
$x1=rand(0, $img_x);
$y1=rand(0, $img_y);
$x2=rand(0, $img_x);
$y2=rand(0, $img_y);
imageline($im, $x1, $y1, $x2, $y2, $nois_color);
};
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
Header("Cache-Control: no-cache, must-revalidate");
Header("Pragma: no-cache");
header("Content-type: image/png");
imagepng($im);
imagedestroy($im);
}
|
ïîòîì ÿ âñòàâëÿþ
ãäå ìíå íóàæíî, è â îïåðå ïîêàçûâàåò òîëüêî êàðòèíêó(íî íå ñàìó êàðòíèêó, à òîëüêî, ÷òî òàì äîëæíà áûòü êàðòèíêà), à â IE ïîêàçââàåò ïîìèìî òàáëèö(â êîòîðûå ÿ âñòàâèë ýòó ôóíêöèþ) èåðîãëèôû :( | |
| |
|
|
| |
|
|
| |
äëÿ: FaStY
(12.03.2006 â 02:04)
| | | Ñòðîêè
$font_cur=rand(0,count($font_arr)-1);
$font_cur=$font_arr[$font_cur];
|
Ñòîèò çàìåíèòü íà
$font_cur="èìÿ_øðèôòà.ttf";
|
è ýòîò øðèôò êèíóòü â ïàïêó ñî ñêðèïòîì.
Ó ìåíÿ ïîëó÷èëîñü òîëüêî òàê. | |
| |
|
|
| |
|
|
| |
äëÿ: FaStY
(12.03.2006 â 11:01)
| | | êàðòèíêó ýòó ìîæíî âûâåñòè <img src=ÍÀÇÂÀÍÈÅ ÔÀÉËÀ ÃÄÅ ÝÒÎÒ ÑÊÐÈÏÒ> | |
| |
|
|
| |
|
|
| |
äëÿ: RV
(12.03.2006 â 05:15)
| | | äà, åñëè íèêóäà íå âñòàâëÿþ, òî âñå íàìàíàíà, à âûâîæó ÿ åå òàê:
ïîïûòàëñÿ ñäåëàòü êàê òû, íî íè÷åãî íå ïîëó÷èëîñü | |
| |
|
|
| |
|
|
| |
äëÿ: FaStY
(12.03.2006 â 02:04)
| | | à åñëè íå êóäà íå âñòàâëÿòü òî êàðòèíêà âûâîäèòñÿ ïðè çàïóñêå ñêðèïòà?
è êàê âñòàâëÿåøü
$font_arr="GARABD.TTF";
......
$font_cur=$font_arr
//$font_cur=$font_arr[$font_cur];
...................
âîò òàê îíà ó ìåíÿ âûâåëàñü | |
| |
|
|
| |
|
|
| | âîò êàêàÿ áåäà: âçÿë ñêðèïò, êîòîðûé ãåíåðèðóåò êàðòèíêó äëÿ ðåãèñòàöèè, íî âîò ïðîáëåìêà, ÷òî ÿ íå ìãó âñòàâèòü åãî â ðåãèñòðàöèþ :(
âîò ñêðèïò:
<?php
$img_x = 80; //Øèðèíà èçîáðàæåíèÿ, ïî óìîë÷àíèþ-100
$img_y = 26; //Âûñîòà èçîáðàæåíèÿ, ïî óìîë÷àíèþ-30
$num_n = 5; //×èñëî öèôð, default-4
$font_min_size = 12; //Ìèíèìàëüíûé ðàçìåð øðèôòà, ïî óìîë÷àíèþ-12
$lines_n_max = 1; //Ìàêñèìàëüíîå ÷èñëî øóìîâûõ ëèíèé, ïî óìîë÷àíèþ-2
$nois_percent = 4; //Çàøóìëåííîñòü öâåòàìè ôîíà è òåêñòà, â ïðîöåíòàõ, ïî óìîë÷àíèþ-3
$angle_max = 18; //Ìàêñèìàëüíûé óãîë îòêëîíåíèÿ îò ãîðèçîíòàëè ïî ÷àñîâîé ñòðåëêå è ïðîòèâ, ïî óìîë÷àíèþ-20
$font_arr=glob(dirname(__FILE__)."/fonts/*.ttf");
$im=imagecreate($img_x, $img_y);
//ñîçäàåì íåîáõîäèìûå öâåòà
$text_color = imagecolorallocate($im, 0, 0, 0); //öâåò òåêñòà
$nois_color = imagecolorallocate($im, 0, 0, 0); //öâåò çàøóìëÿþùèõ òî÷åê è ëèíèé
$img_color = imagecolorallocate($im, 255, 255, 255); //öâåò ôîíà
//çàëèâàåì èçîáðàæåíèå ôîíîâûì öâåòîì
imagefill($im, 0, 0, $img_color);
// ïåðåìåííîé $number áóäåò õðàíèòüñÿ ÷èñëî, ïîêàçàííîå íà èçîáðàæåíèè
$number='';
for ($n=0; $n<$num_n; $n++){
$num=rand(0,9);
$number.=$num;
$font_size=rand($font_min_size, $img_y/2);
$angle=rand(360-$angle_max,360+$angle_max);
$font_cur=rand(0,count($font_arr)-1);
$font_cur=$font_arr[$font_cur];
//âû÷èñëåíèå êîîðäèíàò äëÿ êàæäîé öèôðû, ôîðìóëû îáåñïå÷èâàþò íîðìàëüíîå ðàñïîëîæíèå
//ïðè ëþáûõ çíà÷åíèÿõ ðàçìåðîâ öèôðû è èçîáðàæåíèÿ
$y=rand(($img_y-$font_size)/4+$font_size, ($img_y-$font_size)/2+$font_size);
$x=rand(($img_x/$num_n-$font_size)/2, $img_x/$num_n-$font_size)+$n*$img_x/$num_n;
imagettftext($im, $font_size, $angle, $x, $y, $text_color, $font_cur, $num);
};
//Âû÷èñëÿåì ÷èñëî "çàøóìëåííûõ" ïèêñåëîâ
$nois_n_pix=round($img_x*$img_y*$nois_percent/100);
//çàøóìëÿåì èçîáðàæåíèå ïèêñåëàìè öâåòà òåêñòà
for ($n=0; $n<$nois_n_pix; $n++){
$x=rand(0, $img_x);
$y=rand(0, $img_y);
imagesetpixel($im, $x, $y, $nois_color);
};
//çàøóìëÿåì èçîáðàæåíèå ïèêñåëàìè ôîíîâîãî öâåòà
for ($n=0; $n<$nois_n_pix; $n++){
$x=rand(0, $img_x);
$y=rand(0, $img_y);
imagesetpixel($im, $x, $y, $img_color);
};
$lines_n=rand(0,$lines_n_max);
//ïðîâîäèì "çàøóìëÿþùèå" ëèíèè öâåòà òåêñòà
for ($n=0; $n<$lines_n; $n++){
$x1=rand(0, $img_x);
$y1=rand(0, $img_y);
$x2=rand(0, $img_x);
$y2=rand(0, $img_y);
imageline($im, $x1, $y1, $x2, $y2, $nois_color);
};
Header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
Header("Last-Modified: ".gmdate("D, d M Y H:i:s")."GMT");
Header("Cache-Control: no-cache, must-revalidate");
Header("Pragma: no-cache");
header("Content-type: image/png");
imagepng($im);
imagedestroy($im);
// ïåðåìåííîé $number õðàíèòñÿ ÷èñëî, ïîêàçàííîå íà èçîáðàæåíèè
?>
|
êîãäà ÿ ïûòàþñü åãî âñòàâèòü, òî ðèñóåò íå êàðòèíêó, à èåðîãëèôû, òèïà òàêèõ:
‰PNG IHDRPÒüÆ”PLTEÿÿÿ¿¿¿???___ŸŸŸßßßV R%§IDATxœ}SMOÂ@Ý"=îj"Þ:Ûê� �Ø„Ä#/Þ�‚7Ø˜à‘ !z#Cü·vfJYœ¤Ùéî›7óÞ¶B ûMÐ¥Jç';� PçÌBåŒZ)kOí•BÞº™êµ�Ú˜�~a4Û볓@»d8–£ÂA&¿jp Ì´KÀνtôMðñêàÒ4½/D*%Ÿ… Ž4L˜D%\ë§½�±0‚– õx8lôY&'t0H:}®^&ZAJz4”.²X72ÎIõ•S}QÊ™K¯À#OF<К�•ˆÏ!–U:™œNƒ–KCöå�gRïu‡DmÜŠ¿ˆØ_ûi�€¨èuy¿1]iÔ__±YsCŒ�Á³Q 4<Þa_ ó§å"½,©zlOØ4¡&Þ³°Œ¾Í*Øro‘1r¾IÌöNb÷�5�ÿ‘'„uOYŽnŸ½T(i´F¦Õ“ëA~› dJð‡³MQÚ²Lí0î ÿ,Ö?“‡ÊiQªmxào€´Æ [ ÕGYïò?1;ä¨(ýX‰ìšÇH:€ÉIEND®B'‚
|
ìîæåò êòî çíàåò â ÷åì ïðè÷èíà. | |
| |
|
| |
|