Avatar billede horsmark Nybegynder
25. februar 2003 - 18:58 Der er 14 kommentarer og
1 løsning

GD lib 1.6.2 What to do ?

Jeg har et prob med GD. Mit webhotel får ikke ny GDlib version før til sommer så hvad kan jeg og kan jeg ikke med GD lib 1.6.2 (tror det er installeret?)

til den tekniske www.horsmark.com/info.php
Avatar billede alrua Nybegynder
25. februar 2003 - 19:02 #1
du kan bruge gif-filer...kig på hver funktion og se hvad version af php og gdlib den kræver i http://dk.php.net/ref.image.php
Avatar billede alrua Nybegynder
25. februar 2003 - 19:02 #2
hov - det skulle selvfølgelig være http://ch.php.net/manual/en/ref.image.php
Avatar billede alrua Nybegynder
25. februar 2003 - 19:02 #3
Avatar billede horsmark Nybegynder
25. februar 2003 - 19:20 #4
hmmm har du et stykke kode der kan resize fra eks. jpg og kan køre med GDlib 1.6.2 ?
Avatar billede alrua Nybegynder
25. februar 2003 - 19:35 #5
næh...kan være der er andre? :)
Avatar billede swaxi Nybegynder
25. februar 2003 - 20:47 #6
bare en strøtanke ... det er muligt at de har imagemagick installeret ... hvis de har, så kan du gøre ret mange ting med det (stort set ALT!) ...
Avatar billede al1407 Nybegynder
25. februar 2003 - 20:48 #7
horsmark: Kig på http://novaishot.dk/files/php.imageresize.zip .. en PHP klasse til at resize JPG/PNG (PNG kun i GDlib 2+) ...
Avatar billede al1407 Nybegynder
25. februar 2003 - 20:53 #8
evt. skift linie 73 i `class.imageresize.php' ud med:

$this->i_isGD2 = function_exists("imagepng");

så finder den selv ud af om du kan bruge det ene eller andet ..
Avatar billede horsmark Nybegynder
25. februar 2003 - 20:58 #9
al1407 > nope skal bruge noget der virker til  GBlib 1.6.2 :-( desværre
Avatar billede horsmark Nybegynder
25. februar 2003 - 20:59 #10
åhh kigger lige på det så... *s*
Avatar billede al1407 Nybegynder
25. februar 2003 - 21:02 #11
hæ hæ .. det er ikke afprøvet med GDlib 1.6.2, men det burde virke .. Resize() funktionen burde virke fint på den version .. men Resample() kun virker å GDlib 2+
Avatar billede horsmark Nybegynder
25. februar 2003 - 23:04 #12
hmmm har lagt det herop
http://www.horsmark.com/jh/test_horsmark/phppicresize/

..wodden checker jeg det lige om det spiller - er ikke en haj til php endnu :-)
Avatar billede horsmark Nybegynder
25. februar 2003 - 23:07 #13
har ændret det du sagde i linie 73 men der sker ikke en hujene hattefis :-|
Avatar billede rzj Nybegynder
25. februar 2003 - 23:14 #14
horsmark: Jeg har bruger denne resize, som er funky nok under GDLib 1.6.2:
//BIG THUMBNAIL
        $src_dim = getimagesize($final_dir.$renamed);
       
        //Set correct dimensions for new image (thumb)
        if($src_dim[0] < $src_dim[1]){
            $dest_width = 350;
            $dest_height = 500;
        } else {
            $dest_width = 500;
            $dest_height = 350;
        }
        //Create thumb dependent of image type
        if($ext == "jpg"){
           
            //Create a image in buffer from source image
            $src_img = imagecreatefromjpeg("$final_dir"."$renamed");
           
            //Create distination image in buffer with correct dimensions
            $dst_img = imagecreatetruecolor($dest_width,$dest_height); //should be imagecreatetruecolor, but no supported by azero
           
            //Copy the image from source to destination
            imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, //should be imagecopyresampled, but no supported by azero
            $dest_height, $src_dim[0], $src_dim[1]);
            imagejpeg($dst_img, $final_dir.$renamed, $quality_big);
       
            //Destroy the buffers
            imagedestroy($src_img);
            imagedestroy($dst_img);
       
        } else {
    echo '<script type="text/javascript">uploadWin = window.open("uploadAlert.php?closeWin=2","uploadWin", "width=500, height=200");</script>';
            error("Forkert filtype. Det er kun muligt at uploade billeder af filtypen *.jpg");
        }
       
       
        //SMALL THUMBNAIL
        //Get size of big image
        $src_dim = getimagesize($final_dir.$renamed);
       
        //Set correct dimensions for new image (thumb)
        if($src_dim[0] < $src_dim[1]){
            $dest_width = 66;
            $dest_height = 100;
        } else {
            $dest_width = 100;
            $dest_height = 66;
        }
        //Create thumb dependent of image type
        if($ext == "jpg"){
           
            //Create a image in buffer from source image
            $src_img = imagecreatefromjpeg("$final_dir"."$renamed");
           
            //Create distination image in buffer with correct dimensions
            $dst_img = imagecreatetruecolor($dest_width,$dest_height); //should be imagecreatetruecolor, but no supported by azero
           
            //Copy the image from source to destination
            imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, //should be imagecopyresampled, but no supported by azero
            $dest_height, $src_dim[0], $src_dim[1]);
            imagejpeg($dst_img, $final_dir."/thumbs/".$renamed, $quality);
       
            //Destroy the buffers
            imagedestroy($src_img);
            imagedestroy($dst_img);
       
        } else {
    echo '<script type="text/javascript">uploadWin = window.open("uploadAlert.php?closeWin=2","uploadWin", "width=500, height=200");</script>';
            error("Forkert filtype. Det er kun muligt at uploade billeder af filtypen *.jpg");
        }
        if(file_exists($temp_dir.$renamed)){
            unlink($temp_dir.$renamed);       
        }

det er en del kode og du skal ændre noget (bla. error() kald), men pointen er at du skal erstatte:
imagecopyresampled --> imagecopy
og
imagecreatetruecolor --> imagecreate

så burde det ellers køre...
/raz
Avatar billede horsmark Nybegynder
26. februar 2003 - 21:48 #15
damn nu har jeg bøwlet frem og tilbage med dette script i flere timer og fandt og endte med dette der virker... *pyhh*

$filename = "test.jpg";     // file name on source path
$filepaths = "/home/sites/site25/web/jh/horsmark/album_pic/admin"; //source :: /usr/home/www/images/visitorcards
$filepatht = "/home/sites/site25/web/jh/horsmark/album_pic/admin"; //target :: /usr/home/www/images/visitorcards
$filewidth = "30"; // resize image width
$filehight = "25"; // resize image hight
$smallstart = "thumb_"; // Small Image start with

$src_img = imagecreatefrompng($filepaths."/".$filename);
$dst_img = imagecreate($filewidth,$filewidth);
imagecopyresized($dst_img, $src_img, 0, 0, 0, 0, $filewidth, $filewidth, imagesx($src_img), imagesy($src_img));
imagepng($dst_img, "$filepatht/$smallstart$filename");
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