Kasper Nordal Lund wrote:
> On Tue, 20 Mar 2007 12:03:11 +0100, Nezar Nielsen wrote:
>
>> // Rotate
>> $rotate = imagerotate($source, $degrees, 0);
>>
>> // Output
>> imagejpeg($rotate);
>> ^^^^^^^ <-- bemærk.
>
> Du har da ret, men det virker nu heller ikke efter jeg har rettet det.
>
> Se f.eks. billedet her og tryk roter under billedet:
>
http://www.nordal-lund.dk/sites/main.php?site=born/pics&path=born/7-9_mdr&id=50&index=45
>
Når man outputter direkte med imagejpeg og lign. Så gøres det "altid" på
denne måde.
<img src='rotate.php?img=sti/til/billede°ress=90'>
Da man bruger
header('Content-type: image/jpeg');
Så bliver der sagt til browseren at denne side (rotate.php) er et billede.
Rotate.php kan så se ud som din funktion
rotateImage($_GET["img"],$_GET["degrees"]);
function rotateImage($source,$degrees){
$picture = imagecreatefromjpeg($source);
$rotate = imagerotate($picture, $degrees, 0);
header('Content-type: image/jpeg');
imagejpeg($rotate);
}
En helt anden løsning - er at overskrive dit billede med det rotatede
billede. Noget ala
function rotateImage($source,$degrees){
$picture = imagecreatefromjpeg($source);
$rotate = imagerotate($picture, $degrees, 0);
@unlink($source);
// Vi smækker lige en @ på, bare for ikke at få en warning/error //
hvis billedet ikke eksisterer
file_put_contents($source,imagejpeg($rotate));
// Bemærk kun til PHP 5 - Ellers skal du bruge noget fwrite...
}