Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

etch - php5-gd : absence fonction imagerotate : Fatal error: Call to undefined function imagerotate()

2 réponses
Avatar
Bulot Grégory
bonjour,=20


j'utilise un gestionnaire de gallery photo qui utilise la fonction gd2 =20
imagerotate

j'ai donc v=E9rifier que php5-gd =E9tait bien install=E9, m=EAme apr=E8s re=
d=E9marrage=20
apache, phpinfo me confirme bien la pr=E9sence gd2, mais toujours le messag=
e=20
(dans le flux du navigateur) signalant que la fonction imagerotate n'existe=
=20
pas

en regardant sur le Net chez ubuntu le probl=E8me =E9tait identique, et que=
cela=20
=E9tait du fait que le paquet avait repris 'tel quel' depuis debian.

La seule solution propos=E9e =E9tait de recompiler '=E0 la main' php5-gd av=
ec les=20
directives qui vont bien.

1) y'a-t-il une solution 'plus standart' (qui suis les maj du paquet php5-gd
2) s'il n'existe que la compilation du paquet avec les options 'qui vont=20
bien' : quelles sont ces option/directives ?

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

2 réponses

Avatar
BARBIER Jean-Matthieu
--nextPart2227913.apINnJWkta
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Disposition: inline

Le Monday 14 July 2008 16:58:48 Bulot Grégory, vous avez écrit :
bonjour,


j'utilise un gestionnaire de gallery photo qui utilise la fonction gd2
imagerotate

j'ai donc vérifier que php5-gd était bien installé, même après redémarrage
apache, phpinfo me confirme bien la présence gd2, mais toujours le mess age
(dans le flux du navigateur) signalant que la fonction imagerotate n'exis te
pas

en regardant sur le Net chez ubuntu le problème était identique, et q ue
cela était du fait que le paquet avait repris 'tel quel' depuis debian.

La seule solution proposée était de recompiler 'à la main' php5-gd avec les
directives qui vont bien.

1) y'a-t-il une solution 'plus standart' (qui suis les maj du paquet
php5-gd 2) s'il n'existe que la compilation du paquet avec les options 'q ui
vont bien' : quelles sont ces option/directives ?



autre solution que la recompilation : "recréer" dans le script la fonctio n
imagerotate (pour des multiples de 90°, ce qui pour des galeries photos e st
souvent suffisant) : voilà le bout de code que j'utilise (qui doit venir des
commentaires de la doc php, de mémoire...)

=== CODE :

if(!function_exists("imagerotate"))
{
function imagerotate($src_img, $angle)
{

if (!imageistruecolor($src_img))
{
$w = imagesx($src_img);
$h = imagesy($src_img);
$t_im = imagecreatetruecolor($w,$h);
imagecopy($t_im,$src_img,0,0,0,0,$w,$h);
$src_img = $t_im;
}

$src_x = imagesx($src_img);
$src_y = imagesy($src_img);
if ($angle == 180)
{
$dest_x = $src_x;
$dest_y = $src_y;
}
elseif ($src_x <= $src_y)
{
$dest_x = $src_y;
$dest_y = $src_x;
}
elseif ($src_x >= $src_y)
{
$dest_x = $src_y;
$dest_y = $src_x;
}

$rotate=imagecreatetruecolor($dest_x,$dest_y);
imagealphablending($rotate, false);

switch ($angle)
{
case 270:
for ($y = 0; $y < ($src_y); $y++)
{
for ($x = 0; $x < ($src_x); $x++)
{
$color = imagecolorat($src_img, $x, $y);
imagesetpixel($rotate, $dest_x - $y - 1, $x, $color);
}
}
break;
case 90:
for ($y = 0; $y < ($src_y); $y++)
{
for ($x = 0; $x < ($src_x); $x++)
{
$color = imagecolorat($src_img, $x, $y);
imagesetpixel($rotate, $y, $dest_y - $x - 1, $color);
}
}
break;
case 180:
for ($y = 0; $y < ($src_y); $y++)
{
for ($x = 0; $x < ($src_x); $x++)
{
$color = imagecolorat($src_img, $x, $y);
imagesetpixel($rotate, $dest_x - $x - 1, $dest_y - $y - 1,
$color);
}
}
break;
default: $rotate = $src_img;
};
return $rotate;
}
}

===/CODE

@+
JMB

--
JM Barbier - Solidev.org
tel : +33 (0) 6 86 14 77 29

--nextPart2227913.apINnJWkta
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part.

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQBIe8gA+cj6VhfIEVgRAkpyAJ4gDLs6H2cHYMOes8bF8PcVz2tC9wCgpHlt
gUVUNtC402YIukEOviZD4Ac =6IiP
-----END PGP SIGNATURE-----

--nextPart2227913.apINnJWkta--

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Bulot Grégory
Le lundi 14 juillet 2008 23:41, BARBIER Jean-Matthieu a écrit :

autre solution que la recompilation : "recréer" dans le script la fonct ion
imagerotate (pour des multiples de 90°, ce qui pour des galeries photos est
souvent suffisant) : voilà le bout de code que j'utilise (qui doit venir
des commentaires de la doc php, de mémoire...)

=== CODE :

if(!function_exists("imagerotate"))
{
function imagerotate($src_img, $angle)



j'avais essayé le 1er exemple sur php.net, qui plantait, le votre est
fonctionnel ;-)

Merci ..... en attendant de voir la fonction officiel intégré (qui cons omme
moins de ressource que ce script php !)

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/DebFrFrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact