Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kreiranje image objekta sa podrškom za više formata

[es] :: PHP :: Kreiranje image objekta sa podrškom za više formata

[ Pregleda: 2406 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Kreiranje image objekta sa podrškom za više formata20.10.2008. u 15:01 - pre 187 meseci
Ćao!

Kreirao sam funkciju koja priam putanju do fajla i kreira image objekat.
Kod funkcije:
Code:

public function imgLoad($filePath)
{
    $image = @imagecreatefrompng($filePath);
    if(!$image)
    {
        $image = @imagecreatefromgif($filePath);
        if(!$image)
        {
            $image = @imagecreatefromjpeg($filePath);
            if(!$image)
            {
                throw new Exception('NEUSPELO CITANJE');
            }
        }
    }
    imagedestroy($image);
}

Znači korisnik uploaduje sliku, a funkcija redom pokušava da kreira odbjekat(png, jpg, gif), a ako ništa ne uspe baca exception! Da li postoji prostiji način da se ovako nešto uradi, tipa neka funkcija koja kreira objekat nezavisno od tipa slike, ili mora ovako?

Unapred hvala!
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
91.148.94.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Kreiranje image objekta sa podrškom za više formata20.10.2008. u 15:18 - pre 187 meseci
Za tvoju informaciju, imagecreatefrompng (a i ove druge) ne vraca objekat ;)
Mozda bolje da napises sta imas u planu dalje da radis sa slikom i zasto ti je ovo potrebno, mozda ti ovo uopste i ne treba.
 
Odgovor na temu

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Re: Kreiranje image objekta sa podrškom za više formata20.10.2008. u 16:02 - pre 187 meseci
Treba mi za promenu velicine slika. Slike se uploaduju preko forme i mogu biti bilo kojih velicina i formata, ali izlazna slika mora biti tačne veličine(npr. 200x300) i samo jpg.
 
Odgovor na temu

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Re: Kreiranje image objekta sa podrškom za više formata20.10.2008. u 16:53 - pre 187 meseci
Evo da budem još bliži!
Ovo je funkcija za resize:
Code:
<?php

// This is the temporary file created by PHP
$uploadedfile = $_FILES['uploadfile']['tmp_name'];

// Create an Image from it so we can do the resize
$src = imagecreatefromjpeg($uploadedfile);

// Capture the original size of the uploaded image
list($width,$height)=getimagesize($uploadedfile);

// For our purposes, I have resized the image to be
// 600 pixels wide, and maintain the original aspect
// ratio. This prevents the image from being "stretched"
// or "squashed". If you prefer some max width other than
// 600, simply change the $newwidth variable
$newwidth=600;
$newheight=($height/$width)*600;
$tmp=imagecreatetruecolor($newwidth,$newheight);

// this line actually does the image resizing, copying from the original
// image into the $tmp image
imagecopyresampled($tmp,$src,0,0,0,0,$newwidth,$newheight,$width,$height);

// now write the resized image to disk. I have assumed that you want the
// resized, uploaded image file to reside in the ./images subdirectory.
$filename = "images/". $_FILES['uploadfile']['name'];
imagejpeg($tmp,$filename,100);

imagedestroy($src);
imagedestroy($tmp); // NOTE: PHP will clean up the temp file it created when the request
// has completed.
?> 


Kao što se i vidi, ona kreira resurs preko imagecreatefromjpeg funkcije, što znači da se podrazumeva da korisnik uploaduje JPG fajl(skripta puca sa PNG i GIF).
Ja sam red "$src = imagecreatefromjpeg($uploadedfile);" zamenio sa kodom iz prve poruke, pa me zanima da li je to ok rešenje ili ima neko kraće(tipa neki univerzalni imagecreatefrom)?

Nadam se da sam sada bio jasan. ;)
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
79.101.150.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Kreiranje image objekta sa podrškom za više formata20.10.2008. u 19:58 - pre 187 meseci
Ja koristim funkciju sličnu onoj koju si napisao u prvoj poruci ove teme. Ne verujem da postoji neka ugrađena funkcija koja kreira sliku od bilo kog tipa fajla (naravno, postoji mogućnost da grešim...)
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Re: Kreiranje image objekta sa podrškom za više formata20.10.2008. u 21:59 - pre 187 meseci
@Nemanja Avramović:

Hvala!
 
Odgovor na temu

[es] :: PHP :: Kreiranje image objekta sa podrškom za više formata

[ Pregleda: 2406 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.