imagerotate Problem

peper

Erfahrenes Mitglied
Hi,

Ich würde nun gerne Bilder um 90 Grad drehen können.
Ausprobiert habe ich das ganz mal so.

PHP:
switch ($pic_filetype)
    {
        case '.jpg':
            $read_function = 'imagecreatefromjpeg';
        break;

        case '.png':
            $read_function = 'imagecreatefrompng';
        break;

        default:
            die("Falsches Bildformat");
     }

            $src = @$read_function($pic);
            $rotate = imagerotate($src,90,0);

switch ($pic_filetype)
    {
       	case '.jpg':
        	    @imagejpeg($rotate, $pic);
         break;

         case '.png':
             @imagepng($rotate, $pic);
         break;
     }

Aber irgendetwas scheint zu fehlen, denn als ausgabe bekomme ich dies
HTML:
Call to undefined function imagerotate()

LG Lars
 
Zuletzt bearbeitet:
Ja also ich befürchte mal bei mir sind solche Funktionen einfach nicht möglich ^^


Aber wie kann ich denn rausfinden welche genau Verfügbar sind
LG Lars
 
Gib mal mit <? php_info(); ?> aus, welche Module auf deinem Server vorhanden sind. Und dann such einfach mal nach GDLib. Aktuell ist Version 2. Wenn nicht, dass musst du die nachinstalliern (lassen), ansonsten kannst du mal googlen, welche Funktionen die jeweilige Version beinhaltet. Die PHP-Referenz auf php.net hilft da aber sicher auch weiter.
 
Gut da kommt bei mir raus
HTML:
GD Support 	enabled
GD Version 	2.0 or higher
hmm müßte es dann nicht eigentlich gehen
 
Da sind die Befehle die ich brauche tatsächlich nicht bei.
Werde mal den Hoster anschreiben.

Danke Sehr :)
 
Ist etwas veraltet, aber das Prinzip sollte erkennbar sein.
Drehung um 90 Grad:
http://www.cix88.de/cix_php/php_grafik_effekte/cix_effect_32.php

alt:

PHP:
$RGB = imagecolorsforindex($im, imagecolorat($im, $x, $y));
$R = $RGB["red"];
$G = $RGB["green"];
$B = $RGB["blue"];

ist schneller:
PHP:
$RGB = imagecolorat($im, $x, $y);
$R = (( $RGB >> 16 ) & 0xFF);
$G = (( $RGB >> 8 ) & 0xFF);
$B = ($RGB & 0xFF);
 
PHP:
$RGB = imagecolorat($im, $x, $y);
$R = (( $RGB >> 16 ) & 0xFF);
$G = (( $RGB >> 8 ) & 0xFF);
$B = ($RGB & 0xFF);

Nur mal zum verständnis:
Wenn ich das Ausführen würde hätte ich ein Pixel bewegt oder
 
Zuletzt bearbeitet:
Zurück