Autor Zpráva
denCo
Profil
mam jednu funkciu, ale ani svet nefunguje

<?php
$velkost_x = 200;
$velkost_y = 75;

$text = mt_rand(100000, 999999);

$miesto_na_znak = $velkost_x / (strlen( $text ) +1 );
$obrazok = imagecreatetruecolor( $velkost_x, $velkost_y );

$pozadie = imagecolorallocate ( $obrazok, 255, 255, 255 );
$okraj = imagecolorallocate ( $obrazok, 128, 128, 128 );
$farby[] = imagecolorallocate ( $obrazok, 128, 64, 192 );
$farby[] = imagecolorallocate ( $obrazok, 192, 64, 128 );
$farby[] = imagecolorallocate ( $obrazok, 108, 190, 64 );

imagefilledrectangle( $obrazok, 1, 1, $velkost_x - 2,
                      $velkost_y - 2, $pozadie);
imagerectangle( $obrazok, 0, 0, $velkost_x - 1, $velkost_y - 1, $okraj );

for ( $i = 0; $i < strlen($text); $i++) {
$farba = $farby[$i % count( $farby)];
imagettftext (
$obrazok,
28 + rand(0, 8),
-20 + rand(0, 40),
( $i +0.3 ) * $miesto_na_znak,
50 + rand( 0, 10 ),
$farba,
'arial.ttf',
$text{$i}
); //31 riadok
}

imageantialias( $obrazok, true );  //34 riadok

for ( $i = 0; $i < 1000; $i++)
{
$x1 = rand( 5, $velkost_x -5 );
$y1 = rand(5, $velkost_y -5 );
$x2 = $x1 - 4 + rand( 0, 8 );
$y2 = $y1 - 4 + rand( 0, 8 );
imageline( $obrazok, $x1, $y1, $x2, $y1,
$farby[rand(0, count($farby) - 1 ) ]
);
}

header('Content-Type: image/png');
imagepng($obrazok);
?>


vypisuje chybu

Warning: imagettftext() [function.imagettftext]: Could not find/open font in ... on line 31

Fatal error: Call to undefined function imageantialias() in ... on line 34
Davex
Profil
Je soubor arial.ttf s fontem ve stejném adresáři jako skript?

Funkce imageantialias() nefunguje pravděpodobně proto, že je PHP starší než 4.3.2 nebo je zkompilováno s jinou GD knihovnou - lze to zjistit ve výpisu phpinfo().
denCo
Profil
Je soubor arial.ttf s fontem ve stejném adresáři jako skript?
hej, je
Funkce imageantialias() nefunguje pravděpodobně proto, že je PHP starší než 4.3.2 nebo je zkompilováno s jinou GD knihovnou - lze to zjistit ve výpisu phpinfo().
PHP Version 5.2.0-8+etch15...
GD
FreeType Version 2.2.1
GD Version 2.0 or higher
Majkl578
Profil
Note: This function is only available if PHP is compiled with the bundled version of the GD library.
tudiz to nejde protoze gd knihovna neni zkompilovana primo s php (jak tomu u debianu byva, je v repositari jako php5-gd)
denCo
Profil
a ako to vyriesim?
Davex
Profil
Jméno souboru s fontem musí být jen malými písmeny. Dále bych zkusil v zadání jména souboru s fontem vnutit aktuální adresář.

imagettftext (
$obrazok,
28 + rand(0, 8),
-20 + rand(0, 40),
( $i +0.3 ) * $miesto_na_znak,
50 + rand( 0, 10 ),
$farba,
'./arial.ttf',
$text{$i}
); //31 riadok
}


Funkce imageantialias() není na serveru dostupná, tak jí jednoduše nepoužívej.
denCo
Profil
Davex
jj ten font som vyriesil zadanim uplnej cesty... ok tu funckiu idem skusit

hej funguje mi teraz vsetko len nefunguje mi mt_rand(), ked tam dam retazec vypise obrazok v pohode ale ked dam ze $text = mt_rand(10000,999999); tak nezobrazi ziadny text
Davex
Profil
Funkce mt_rand() vrací číslo, které se musí v tomto případě převést na string:

$text = strval(mt_rand(10000,999999));
denCo
Profil
jojo, ide mi to, vdaka az radu

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0