Avatar billede clevzter Nybegynder
06. oktober 2003 - 23:44 Der er 7 kommentarer og
1 løsning

script implementering

Davs.

Jeg har det her script, som bruger GdLib til at resize et billede:

function resizeImage($src_file, $dest_file, $newWidth)
{
// find the image size
$imginfo = @getimagesize($src_file);
if ($imginfo == NULL)
  return false;

// height/width
$srcWidth = $imginfo[0];
$srcHeight = $imginfo[1];

$ratioWidth = $srcWidth/$newWidth;
$ratioHeight = 0;
$destWidth = $newWidth;
$destHeight = $srcHeight / $ratioWidth;
$src_img = imagecreatefromjpeg($src_file);
$dst_img = imagecreatetruecolor($destWidth,$destHeight);
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $destWidth,(int)$destHeight, $srcWidth, $srcHeight);
imagejpeg($dst_img, $dest_file, 100);
imagedestroy($src_img);
imagedestroy($dst_img);
return $dest_file;
}

Er der nogen der kan sige mig hvordan jeg skal gøre, hvis jeg vil kunne bruge scriptet ved at skrive f.eks.: <img src="thumb.php?src=noget.jpg&width=100">?
Avatar billede schaefner Juniormester
06. oktober 2003 - 23:47 #1
Prøv:

--- noname.html ---

<img src="thumb.php?src=noget.jpg&width=100">?

--- thumb.php ---

<?php
$src_file = $_GET['src'];
$newWidth = $$_GET['width'];

// find the image size
$imginfo = @getimagesize($src_file);
if ($imginfo == NULL)
  return false;

// height/width
$srcWidth = $imginfo[0];
$srcHeight = $imginfo[1];

$ratioWidth = $srcWidth/$newWidth;
$ratioHeight = 0;
$destWidth = $newWidth;
$destHeight = $srcHeight / $ratioWidth;
$src_img = imagecreatefromjpeg($src_file);
$dst_img = imagecreatetruecolor($destWidth,$destHeight);
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $destWidth,(int)$destHeight, $srcWidth, $srcHeight);
imagejpeg($dst_img, $dest_file, 100);
imagedestroy($src_img);
imagedestroy($dst_img);
?>
Avatar billede clevzter Nybegynder
06. oktober 2003 - 23:51 #2
Nope, det virker ikke.
Der må være noget med den der $dest_file
Gemmer den en thumbnail eller hvordan? Den må gerne bare generere den "onthefly"...
Avatar billede schaefner Juniormester
06. oktober 2003 - 23:52 #3
$newWidth = $_GET['width'];
Avatar billede schaefner Juniormester
06. oktober 2003 - 23:52 #4
så skulle den den virke. Der var lige et $ for meget :)

mvh. Jesper Sørensen
Avatar billede schaefner Juniormester
06. oktober 2003 - 23:54 #5
<?php
$src_file = $_GET['src'];
$newWidth = $_GET['width'];
$imginfo = getimagesize($src_file);
$srcWidth = $imginfo[0];
$srcHeight = $imginfo[1];

$ratioWidth = $srcWidth/$newWidth;
$ratioHeight = 0;
$destWidth = $newWidth;
$destHeight = $srcHeight / $ratioWidth;
$src_img = imagecreatefromjpeg($src_file);
$dst_img = imagecreatetruecolor($destWidth,$destHeight);
ImageCopyResampled($dst_img,$src_img,0,0,0,0,$destWidth,(int)$destHeight,$srcWidth,$srcHeight);
imagejpeg($dst_img);
imagedestroy($src_img);
imagedestroy($dst_img);
?>

http://disneyzone.dk/resize.html
Avatar billede clevzter Nybegynder
06. oktober 2003 - 23:55 #6
Hold da op, hvor det virker. Tusind tak!
Havde heller ikke lige selv bemærket det extra $.

Men tak for det.
Avatar billede clevzter Nybegynder
06. oktober 2003 - 23:59 #7
>> schaefer

Hvad er det sidste du har skrevet dér? Bare en lidt forkortet udgave eller hvad?
Avatar billede clevzter Nybegynder
07. oktober 2003 - 00:01 #8
Hvad hvis et billede nu er højere end det er bredt; kan jeg så definere en højde på det og få bredden tilpasset?

Hvad kræver det af modificationer til scriptet?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester